Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

msg_receive

Semaphore Funktionen

    Befehl:
bool msg_receive ( resource $queue , int $desiredmsgtype , int &$msgtype , int $maxsize , mixed &$message [, bool $unserialize = true [, int $flags = 0 [, int &$errorcode ]]] )


    Parameter-Liste:
NameBeschreibung
queue 
desiredmsgtypeWenn desiredmsgtype 0 ist, wird die Nachricht von der Spitze der Warteschlange zurückgegeben. Wenn desiredmsgtype größer als 0 ist, dann ist die erste Nachricht dieses Typs zurückgegeben. Wenn desiredmsgtype ist kleiner als 0, die erste Nachricht in der Warteschlange mit der niedrigsten Art kleiner oder gleich dem absoluten Wert der desiredmsgtype gelesen. Wenn keine Nachrichten den Kriterien entsprechen, wird das Skript warten, bis eine entsprechende Meldung kommt in der Warteschlange. Sie können das Skript vom Blockieren zu verhindern, indem Sie MSG_IPC_NOWAIT in den flags-Parameter.
msgtypeDer Typ der Nachricht, die empfangen wurde, wird in diesem Parameter gespeichert werden.
maxsizeDie maximale Größe der Nachricht, um akzeptiert zu werden, wird durch die maxsize angegeben, wenn die Nachricht in der Warteschlange ist größer als dieser Größe wird die Funktion (es sei denn scheitern Sie flags, wie unten beschrieben).
messageDie empfangene Nachricht wird in message gespeichert werden, es sei denn, es Fehler gab die Nachricht empfängt.
unserializeWenn auf TRUE, wird die Nachricht als ob er behandelt, als mit dem gleichen Mechanismus wie das Session-Modul serialisiert. Die Nachricht wird deserialisiert werden und wieder in Ihr Skript dann. So können Sie leicht erhalten Arrays oder komplexe Objektstrukturen aus anderen PHP-Skripten, oder wenn Sie mit den WDDX Serializer, von jeder Quelle WDDX kompatibel.

Wenn unserialize ist FALSE, wird die Nachricht als binary safe String zurückgegeben werden.
flagsDie optionalen Flags können Sie die Fahnen der Low-Level-msgrcv Systemaufruf übergeben. Der Standardwert ist 0, aber Sie können einen oder mehrere der folgenden Werte (durch Hinzufügen oder ODER-Verknüpfung zusammen) angeben.
Flag-Werte für msg_receive
NameBeschreibung
MSG_IPC_NOWAITWenn es keine Meldungen des desiredmsgtype, sofort zurück und warten Sie nicht. Die Funktion schlägt fehl und gibt eine ganze Zahl entsprechend MSG_ENOMSG.
MSG_EXCEPTMit dieser flag in Kombination mit einem desiredmsgtype größer als 0 bewirkt, dass die Funktion die erste Nachricht, die nicht gleich desiredmsgtype zu empfangen.
MSG_NOERRORIst die Nachricht länger als maxsize, Setzen dieses Flags wird die Nachricht an maxsize kürzen und wird einen Fehler nicht zu signalisieren.
errorcodeWenn die Funktion fehlschlägt, die optionale errorcode auf den Wert der Systemvariable errno gesetzt werden.

    Rückgabewerte:
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.

Nach erfolgreichem Abschluss der Message-Queue-Datenstruktur wird wie folgt aktualisiert: msg_lrpid wird dem Prozess-ID des aufrufenden Prozesses gesetzt ist, wird msg_qnum um 1 und msg_rtime verringert auf die aktuelle Zeit gesetzt.

    Beschreibung:
msg_receive() wird die erste Nachricht aus dem angegebenen queue erhalten von der Art, desiredmsgtype angegeben.


    Aktiv in Version:
(PHP 4 >= 4.3.0, PHP 5, PHP 7)

    Siehe auch:
Entfernt eine Message Queue
 
Senden Sie eine Nachricht an eine Nachrichtenwarteschlange
 
Liefert Informationen zu einer Message Queue
 
Setzt Metadaten in derMessage Queue Datenstruktur
 

msg_receive() - Beispiel:


Eingabe:
Im moment kein Beispiel vorhanden
Semaphore Funktionen