Mbed OS与FreeRTOS中的事件、互斥锁和信号量使用解析
1. 事件(Event)
在实时操作系统中,事件是一种用于任务间同步的机制。在Mbed OS里,有几个与事件相关的重要函数:
uint32_t wait_all_until(uint32_t flags, Kernel::Clock::time_point abs_time , bool clear=true);
/*
abs_time: timeout value.
*/
uint32_t wait_any(uint32_t flags=0, uint32_t millisec=osWaitForever , bool clear=true);
uint32_t wait_any_for(uint32_t flags, Kernel::Clock::duration_u32 rel_time , bool clear=true);
uint32_t wait_any_until(uint32_t flags, Kernel::Clock::time_point abs_time , bool clear=true);
~EventFlags();
1.1 事件使用示例
- 示例一
在这个示例中,除了默认的主线程外,还创建了一个名为thread1的额外线程。thread1的优先级设置为osPriorityAboveNormal,高于默认主线程的优先级。
超级会员免费看
订阅专栏 解锁全文
36

被折叠的 条评论
为什么被折叠?



