Răsfoiți Sursa

修复osThreadExit函数

Meco Man 4 ani în urmă
părinte
comite
e0670335da
1 a modificat fișierele cu 4 adăugiri și 4 ștergeri
  1. 4 4
      cmsis_rtthread.c

+ 4 - 4
cmsis_rtthread.c

@@ -801,12 +801,12 @@ osStatus_t osThreadJoin(osThreadId_t thread_id)
 }
 
 /// Terminate execution of current running thread.
-__NO_RETURN void osThreadExit(void)  /* doing */
+__NO_RETURN void osThreadExit(void)
 {
-    rt_thread_exit();
-
+    rt_thread_t self = rt_thread_self();
+    rt_thread_control(self, RT_THREAD_CTRL_CLOSE, RT_NULL);
     RT_ASSERT(0);
-    while (1);
+    while(1);
 }
 
 /// Terminate execution of a thread.