mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-09-20 17:44:20 +08:00
[libc][exit][abort] 重新实现exit和abort函数
This commit is contained in:
@@ -255,8 +255,21 @@ void _ttywrch(int ch)
|
||||
|
||||
RT_WEAK void _sys_exit(int return_code)
|
||||
{
|
||||
/* TODO: perhaps exit the thread which is invoking this function */
|
||||
while (1);
|
||||
rt_thread_t self = rt_thread_self();
|
||||
|
||||
#ifdef RT_USING_MODULE
|
||||
if (dlmodule_self())
|
||||
{
|
||||
dlmodule_exit(return_code);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (self != RT_NULL)
|
||||
{
|
||||
rt_kprintf("thread:%-8.*s exit:%d!\n", RT_NAME_MAX, self->name, return_code);
|
||||
rt_thread_suspend(self);
|
||||
rt_schedule();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user