Definition | #include <sys/msg.h> int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); | |
Beschreibung |
msgp zeigt auf einen benutzerdefinierten Puffer, der eine Komponente des Typs struct mymsg { long int mtype; /* Nachrichtentyp */ char mtext[1]; /* Nachrichtentext */ } Die Strukturkomponente Die Strukturkomponente msgflg gibt an, welche Aktion ausgeführt werden soll, wenn eine oder mehrere der folgenden Bedingungen erfüllt sind:
Folgende Aktionen können dann ausgeführt werden:
Bei erfolgreicher Beendigung werden die folgenden Aktionen auf der msqid zugeordneten Datenstruktur ausgeführt:
Werden Threads verwendet, so wirkt sich die Funktion auf den Prozess oder auf einen Thread wie folgt aus: Der Parameter msgflg bezieht sich auf den aufrufendenThread. | |
Returnwert | 0 | bei Erfolg. |
| -1 | bei Fehler. |
Fehler |
| |
|
| Der aufrufende Prozess erhält keine Erlaubnis für diese Operation. |
|
| Die Nachricht kann aus einem der oben genannten Gründe nicht gesendet werden und |
Erweiterung | ||
|
| msgp verweist auf eine unzulässige Adresse. (Ende) |
|
| Die Warteschlangenkennzahl msqid wurde aus dem System entfernt. |
|
|
|
|
| msqid ist keine gültige Warteschlangenkennzahl, |
Hinweise | Der Wert des Arguments msgp sollte in den Typ Das Kommittee des IEEE 1003.4-Standards entwickelt gerade eine alternative Schnittstelle für die Interprozeßkommunikation. Anwendungsprogrammierer, die Interprozeßkommunikation einsetzen, sollten die Anwendungen so konzipieren, daß Module, die derzeit beschriebene Funktionen für Interprozeßkommunikation benutzen, einfach geändert werden können. | |
Siehe auch |
|