2012-07-27 3 views

답변

2

메시지 큐에서 모든 메시지를 플러시하는 기본 제공 API가 없습니다.

void discardQMessages(MSG_Q_ID id) { 
    while(
     msgQReceive(id, NULL, 0, NO_WAIT) != ERROR 
     ) ; 

    if {errno != S_objLib_OBJ_UNAVAILABLE) 
    /* Uh oh... got some problem */ 
} 

당신이해야 당신이 어떤 OS API 호출에서 오류가 발생 항상 체크의 errno :
는 큐에서 모든 메시지를 삭제하면됩니다하려는 모든, 여기에이 작업을 빠르게 수행 할 수 있습니다합니다.

+0

thrx 정보입니다. 나는 또한이 방법으로 생각하고 있었다. – Pratik