wait 메소드는 일부 다른 태스크가 동일한 이벤트 플래그 인스턴스에서 signal을 호출하여 릴리스할 때까지 호출하는 태스크를 차단합니다.
RiCOSResult RiCOSEventFlag_wait( RiCOSEventFlag *const me, int tminms);
me
RiCOSEventFlag 오브젝트입니다.
tmins
스레드가 차단된 상태로 남아 있어야 하는 시간 길이(밀리초)를 지정합니다. 값이 –1이면 무한정 대기를 의미합니다.
RiCOS*.h 파일에 정의된 RiCOSResult 오브젝트입니다.
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;
}