1.信号量的用途
1)共享资源的保护,例如需要共用一段内存,初始信号量的计数值为1
task1: task2
pend信号量 pend信号量
共享资源 共享资源
post信号量 post信号量
2)任务之间的同步
比如中断接收来自FPGA的数据,此时发送信号量。任务处理数据,任务中请求信号量。
3)OSMboxPend():等待一个邮箱中的消息。若邮箱为满,将其内容(某消息的地址)返回;若邮箱为空,当前任务将被阻塞,直到邮箱有了纤细或等待超时。
1.信号量的用途
1)共享资源的保护,例如需要共用一段内存,初始信号量的计数值为1
task1: task2
pend信号量 pend信号量
共享资源 共享资源
post信号量 post信号量
2)任务之间的同步
比如中断接收来自FPGA的数据,此时发送信号量。任务处理数据,任务中请求信号量。
3)OSMboxPend():等待一个邮箱中的消息。若邮箱为满,将其内容(某消息的地址)返回;若邮箱为空,当前任务将被阻塞,直到邮箱有了纤细或等待超时。