Mbed OS 文档翻译 之 参考(API(RTOS(EventFlags)))

EventFlags

                                                                    

                                                                          EventFlags 类层次结构

EventFlags 类提供了一种设置和等待特定条件的机制。它提供了一种通知其他线程有关条件或事件的通用方法。您可以将 EventFlags 类的每个实例视为事件通道。每个活动有 31 种不同的标志。

EventFlag 类参考

rtos::EventFlags 类参考

公共成员函数
 EventFlags ()
 EventFlags (const char *name)
uint32_t set (uint32_t flags)
uint32_t clear (uint32_t flags=0x7fffffff)
uint32_t get () const
uint32_t wait_all (uint32_t flags=0, uint32_t timeout=osWaitForever, bool clear=true)
uint32_t wait_any (uint32_t flags=0, uint32_t timeout=osWaitForever, bool clear=true)
 ~EventFlags ()

EventFlags 示例

下面是 EventFlags 用法的示例,其中一个线程每 1 秒生成事件,第二个线程正在等待事件并执行某些操作。

 

#include "mbed.h"

EventFlags event;

void worker_f()
{
    while (true) {
        event.wait_all(0x1);

        printf("Got signal!\r\n");
    }
}

int main()
{
    Thread worker;

    worker.start(callback(worker_f));

    while (true) {
        wait(1);
        event.set(0x1);
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值