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():等待一個郵箱中的消息。若郵箱爲滿,將其內容(某消息的地址)返回;若郵箱爲空,當前任務將被阻塞,直到郵箱有了纖細或等待超時。