lock 方法會判定互斥旗標是否可用並相應地據以回應:
- 如果互斥旗標可用,則此作業會對其進行鎖定,並容許呼叫作業進入其主要區段。
- 如果互斥旗標已鎖定,則此作業會將呼叫作業與其他已封鎖作業一起,放置於等待佇列。
在非 pSOSystem 的環境中,這是實作相同介面的巨集。
簽章RiCOSResult RiCOSMutex_lock (RiCOSMutex *const me);
傳回RiCOSResult 物件,如 RiCOS*.h 檔案所定義
範例RiCOSResult RiCOSMutex_lock(RiCOSMutex * const me)
{
if (me == NULL) {return 0;}
if (semTake(me->hMutex, WAIT_FOREVER)==OK) {
return 1; }
else return 0;
}