init 메소드는 RiCOSMessageQueue 오브젝트를 초기화합니다.
RiCBoolean RiCOSMessageQueue_init( RiCOSMessageQueue *const me, RiCBoolean shouldGrow, int initSize);
me
초기화할 RiCOSMessageQueue 오브젝트를 지정합니다.
shouldGrow
큐의 크기를 고정하거나(RiCFALSE) 필요에 따라 확장 가능한지(RiCTRUE) 여부를 판별합니다.
initSize
큐의 초기 크기를 지정합니다. 기본 메시지 큐 크기는 RiCOSDefaultMessageQueueSize 변수로 설정합니다. 메시지 큐를 작성할 때 다른 값을 전달하여 기본값을 대체할 수 있습니다.
메시지 큐의 최대 길이는 운영 체제 및 구현에 따라 다릅니다. 이 값은 일반적으로 특정 운영 체제의 어댑터에 설정되어 있습니다.
성공한 경우 이 메소드는 RiCTRUE를 리턴합니다.
RiCBoolean RiCOSMessageQueue_init(
RiCOSMessageQueue * const me, RiCBoolean shouldGrow,
int initSize)
{
if (me == NULL) return RiCFALSE;
if (initSize < 0) initSize =
RiCOSDefaultMessageQueueSize;
me->m_State = noData;
me->hVxMQ = msgQCreate(initSize, sizeof(void*),
MSG_Q_FIFO);
return RiCTRUE;
}