事件相关介绍

1、事件基本概念

事件是一种实现任务间通信的机制,主要用于实现多任务间的同步,但事件通信只能是事件类型的通信,无数据传输。与信号量不同的是,它可以实现一对多,多对多的同步。即一个任务可以等待多个事件的发生:可以是任意一个事件发生时唤醒任务进行事件处理;也可以是几个事件都发生后才唤醒任务进行事件处理。同样,也可以是多个任务同步多个事件。

2、事件标志组简介

首先介绍两个概念。

事件标志位:用一个位,来表示事件是否发生。

事件标志组:一组事件标志位的集合,可以简单的理解事件标志组,就是一个整数。

事件标志组的特点:

(1)它的每一位表示一个事件(高8位不算)

(2)每一位事件的含义,由用户自己决定,比如:bit0表示按键是否按下,bit1表示是否接收到消息。这些位的值为1:表示事件发生了;值为0:表示事件未发生。

(3)任意任务或中断都可以读写这些位。

(4)可以等待某一位成立,或者等待多位同时成立。

-------------------------------------------------------------------------------------------------------------------------------为什么第一个特点中说高8位不表示事件呢?

因为高8位的作用是存储事件标志组的控制信息。以一个32位时间标志组为例。

-------------------------------------------------------------------------------------------------------------------------------

3、事件相关API函数

动态方式创建事件标志组

清除事件标志位

设置事件标志位

等待事件标志位

同步函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值