wait

wait 方法會封鎖建立呼叫的作業,直到有某個其他作業透過在相同的事件旗標實例上呼叫 signal 而解除封鎖為止。

簽章
RiCOSResult RiCOSEventFlag_wait(
   RiCOSEventFlag *const me, int tminms);
參數
me

RiCOSEventFlag 物件。

tmins

指定執行緒應該保持封鎖的時間長度(毫秒)。值 –1 表示無限期地等待。

傳回

RiCOSResult 物件,如 RiCOS*.h 檔案所定義

範例
RiCOSResult RiCOSEventFlag_wait(
   RiCOSEventFlag * const me, int tminms)
{
   if (me == NULL) {return 0 /*WAIT_FAILED*/;}
   if (-1 == tminms) {
      semTake(me->hEventFlag, WAIT_FOREVER);
   }
   else {
      int ticks = cvrtTmInMStoTicks(tminms);
      semTake(me->hEventFlag, ticks);
   }
   return (RiCOSResult)1;
}

回饋