summaryrefslogtreecommitdiff
path: root/src/idle.c
diff options
context:
space:
mode:
authorMeco Man <[email protected]>2021-06-02 15:30:32 +0800
committerMeco Man <[email protected]>2021-06-03 19:05:36 +0800
commit5a6bc9900689ba2d21850cc520c3621c57037025 (patch)
tree0cf2c4f67323c33626e7dcccc17a00c04b3720cf /src/idle.c
parentf34e9323b430813a6dbb62a609cfb3980aa645b0 (diff)
[bug][kernel] 保持空闲任务钩子函数调用的原子性
Diffstat (limited to 'src/idle.c')
-rw-r--r--src/idle.c6
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