summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorshaojinchun <[email protected]>2019-11-15 10:45:12 +0800
committershaojinchun <[email protected]>2019-11-15 10:45:12 +0800
commit88b552276b1b64750f3db460b36f8e329f1c18c4 (patch)
treedf7869b36d2c9a8181b1b526149ba2fade782307 /src
parentcdaf8c65cabd0120e6d19453cfffe905e9b6a769 (diff)
修正在多核时,运行在另外核上的idle任务有可能会插在rt_thread_exit调用rt_schedule之前释放其资源的问题
Diffstat (limited to 'src')
-rw-r--r--src/thread.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/thread.c b/src/thread.c
index bee5f0c2c0..c5f75a1176 100644
--- a/src/thread.c
+++ b/src/thread.c
@@ -107,11 +107,11 @@ void rt_thread_exit(void)
rt_list_insert_after(&rt_thread_defunct, &(thread->tlist));
}
- /* enable interrupt */
- rt_hw_interrupt_enable(level);
-
/* switch to next task */
rt_schedule();
+
+ /* enable interrupt */
+ rt_hw_interrupt_enable(level);
}
static rt_err_t _rt_thread_init(struct rt_thread *thread,