msgrcv > msg_type

25/10/2013 - 11:57 von Heinz-Mario Frühbeis | Report spam
Hallo,

kann es sein, wenn in verschiedenen Libraries, oder Programmen (in vllt
eigenem Prozess) msgrcv() aufgerufen wird mit msg_type == 0, daß dann
die Message aus der Queue entfernt wird, egal von wem die Message
"recieved" wurde?

Ich frage hier wie folgt ab:

nRetRcv = msgrcv(nMsgQ_ID, &dataMsg, defMsgSize, 0, 0);
if(nRetRcv > -1){
switch(dataMsg.MsgType){
case so und so:
//DoSome
break;
}
}

Wenn ich nun also z. Bsp. in Prog_A, Lib_A, Lib_B die gleiche
Vorgehensweise habe, wàre dann die Message aus der Queue entfernt, egal,
ob Prog_A, oder Lib_A, Lib_B die Message zuerst bekam und egal, ob die
Message "geswitcht" werden konnte?

Vorab mit Dank
H-MF
 

Lesen sie die antworten

#1 Christoph Moench-Tegeder
25/10/2013 - 18:48 | Warnen spam
## Heinz-Mario Frühbeis :

kann es sein, wenn in verschiedenen Libraries, oder Programmen (in vllt
eigenem Prozess) msgrcv() aufgerufen wird mit msg_type == 0, daß dann
die Message aus der Queue entfernt wird, egal von wem die Message
"recieved" wurde?



Das muss sogar so sein, sonst hat das mit der Message-Queue wenig Sinn.

Gruß,
Christoph

Spare Space

Ähnliche fragen