diff options
| author | Bernard Xiong <[email protected]> | 2019-11-16 10:04:56 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-11-16 10:04:56 +0800 |
| commit | 0548b3af6fd1777eaeda9ee930cf636d4c0ce535 (patch) | |
| tree | 23e5bc572212b3ba7121d75fe87898560f5e18f0 /src/thread.c | |
| parent | 69e8c0324e77d7c30634d2a74264fd4fc171ec24 (diff) | |
| parent | 88b552276b1b64750f3db460b36f8e329f1c18c4 (diff) | |
Merge pull request #3203 from jesven/fix_thread_exit
修正在多核时,运行在另外核上的idle任务有可能会插在rt_thread_exit调用rt_schedule之前释放其资源的问题
Diffstat (limited to 'src/thread.c')
| -rw-r--r-- | src/thread.c | 6 |
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, |
