[libc][exit][abort] 重新实现exit和abort函数

This commit is contained in:
Meco Man
2021-02-13 13:16:17 +08:00
parent f0805a7973
commit b89b3958bc
2 changed files with 33 additions and 12 deletions
+15 -2
View File
@@ -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();
}
}
/**