diff options
| author | Bernard Xiong <[email protected]> | 2020-10-01 15:46:10 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2020-10-01 15:46:10 +0800 |
| commit | aeff91b2a7fc846cf3724c01c28fbd7327bd2bac (patch) | |
| tree | 70a60a6912fe592227d58ea860f80119c131003d /src/scheduler.c | |
| parent | c758168877bef84355905c6e80f79a5abd6b16fc (diff) | |
| parent | 3ed84b8d03dc9778f1c262278e2b8653de834408 (diff) | |
Merge pull request #3769 from jesven/fix_yield
解决yield操作不能及时释放cpu的问题
Diffstat (limited to 'src/scheduler.c')
| -rw-r--r-- | src/scheduler.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/scheduler.c b/src/scheduler.c index 699c817270..2250c4a006 100644 --- a/src/scheduler.c +++ b/src/scheduler.c @@ -346,9 +346,9 @@ void rt_schedule(void) } else { - current_thread->stat &= ~RT_THREAD_STAT_YIELD_MASK; rt_schedule_insert_thread(current_thread); } + current_thread->stat &= ~RT_THREAD_STAT_YIELD_MASK; } to_thread->oncpu = cpu_id; if (to_thread != current_thread) @@ -444,9 +444,9 @@ void rt_schedule(void) } else { - rt_current_thread->stat &= ~RT_THREAD_STAT_YIELD_MASK; need_insert_from_thread = 1; } + rt_current_thread->stat &= ~RT_THREAD_STAT_YIELD_MASK; } if (to_thread != rt_current_thread) @@ -595,9 +595,9 @@ void rt_scheduler_do_irq_switch(void *context) } else { - current_thread->stat &= ~RT_THREAD_STAT_YIELD_MASK; rt_schedule_insert_thread(current_thread); } + current_thread->stat &= ~RT_THREAD_STAT_YIELD_MASK; } to_thread->oncpu = cpu_id; if (to_thread != current_thread) |
