如何在Multi-thread的架構下,以pthread實作Event的作法:
我們常在其它的Embedded OS中使用Event的機制來達到Process之間的通訊,但在Linux中卻沒有Event的機制可供使用,此時您可以以這個方法來達成!
.我們可以宣告一個指定數目的Array做為Event的宣告。
.而Array中的每一個Element就當作是一個Event Bit。
.然後,我們可以為每一個欲等待的Event建立一個monitor thread,然後使用thread的condition Variable來等待該Event被設立。
.當Event被設立(Condition Variable的狀態為TRUE時),monitor thread就會被喚醒,它就可以通知等待此Event的thread。
詳細Sample Code待日後找個時間再Post出來!
沒有留言:
張貼留言