diff options
| author | Meco Man <[email protected]> | 2021-06-02 15:30:32 +0800 |
|---|---|---|
| committer | Meco Man <[email protected]> | 2021-06-03 19:05:36 +0800 |
| commit | 5a6bc9900689ba2d21850cc520c3621c57037025 (patch) | |
| tree | 0cf2c4f67323c33626e7dcccc17a00c04b3720cf /src/idle.c | |
| parent | f34e9323b430813a6dbb62a609cfb3980aa645b0 (diff) | |
[bug][kernel] 保持空闲任务钩子函数调用的原子性
Diffstat (limited to 'src/idle.c')
| -rw-r--r-- | src/idle.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/idle.c b/src/idle.c index 59868352d8..e73a78be9c 100644 --- a/src/idle.c +++ b/src/idle.c @@ -202,12 +202,14 @@ static void rt_thread_idle_entry(void *parameter) { #ifdef RT_USING_IDLE_HOOK rt_size_t i; + void (*idle_hook)(void); for (i = 0; i < RT_IDLE_HOOK_LIST_SIZE; i++) { - if (idle_hook_list[i] != RT_NULL) + idle_hook = idle_hook_list[i]; + if (idle_hook != RT_NULL) { - idle_hook_list[i](); + idle_hook(); } } #endif |
