init

此方法會起始設定 RiCOSTimer 物件。

簽章
RiCBoolean RiCOSTimer_init (RiCOSTimer *const me,
   timeUnit ptime, void (*cbkfunc)(void *), 
void *params);
參數
me

要起始設定的 RiCOSTimer 物件。

pTime

計時器每時間計數之間的時間。 在大部分配接器中,時間單位是毫秒;不過,這取決於特定的配接器實作。

cbkfunc

時間計數計時器回呼函數,用於通知計時器用戶端發生時間計數。

參數

回呼函數的參數。

傳回

如果成功,此方法會傳回 RiCTRUE

範例
RiCBoolean RiCOSTimer_init(RiCOSTimer * const me,
   timeUnit ptime, void (*cbkfunc)(void *), void *params)
{
   if (me == NULL) return RiCFALSE;
   me->cbkfunc = cbkfunc;
   me->param   = params;

   if (((RiCTimerManager*)params)->realTimeModel) {
      /****      VxWorks TickTimer(Real Time)      ****/
      me->m_Time  = ptime;
      /* 建立執行橋接器的執行緒,傳遞
         此參數作為引數。 */
      me->ticks = cvrtTmInMStoTicks(me->m_Time);
      me->hThread = taskSpawn("timer", PRIORITY_HIGH, 0,
         SMALL_STACK, (int (*)())bridge, 
         (int)(void *)me /*p1*/, 0,0,0,0,0,0,0,0,0 );
      return me->hThread != ERROR;
   }
   else {
      /****      IdleTimer (Simulated Time)   ****/
      me->m_Time = 0; /* 建立環境定義切換
         直到系統進入閒置模式為止。 */
      me->hThread = taskSpawn("timer", PRIORITY_LOW, 0,
         SMALL_STACK, (int (*)())bridge, (int)(void*)me,
         0,0,0,0,0,0,0,0,0);
      return RiCTRUE;
   }
}

回饋