msg_get_queue <<< |
msg_receive | msg_remove_queue >>> |
7.93 Sémaphores et gestion de la mémoire partagée 7 Index des fonctions Manuel PHP . Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes prédefinies . ftok . msg_get_queue ->msg_receive . msg_remove_queue . msg_send . msg_set_queue . msg_stat_queue . sem_acquire . sem_get . sem_release . sem_remove . shm_attach . shm_detach . shm_get_var . shm_put_var . shm_remove_var . shm_remove |
7.93.9 msg_receive() Reçoit un message depuis une file de messages[ Exemples avec msg_receive ] PHP 4 >= 4.3.0 bool msg_receive ( int queue , int desiredmsgtype , int msgtype , int maxsize , mixed message , bool unserialize , int flags , int errorcode )msg_receive reçoit le premier message de la file queue , type spécifié par desiredmsgtype . Le type de message qui a été reçu sera stocké dans le paramètre msgtype . La taille maximale de message est fixée par maxsize ; si le message de la file est plus grand que cette taille, la fonction échouera (à moins que vous n'utilisiez une option flags , décrite ci-dessous). Le message reçu sera stocké dans le paramètre message , à moins qu'il n'y ait eu des erreurs de reception du message, auquel cas le paramètre optionnel errorcode se verra assigné le numéro d'erreur. Si desiredmsgtype vaut 0, le premier message de la file est retourné. Si desiredmsgtype vaut plus que 0, alors le premier message de ce type sera retourné. SI desiredmsgtype vaut moins que 0, le premier message de la file ayant un type inférieur ou égaql à la valeur absolue de desiredmsgtype sera retournée. Si aucun message ne correspond aux critères, votre script attendra la venue d'un tel message dans la file. Vous pouvez éviter ce bloquage en précisant l'option MSG_IPC_NOWAIT dans le paramètre flags . unserialize vaut par défaut TRUE ; quand c'est le cas, le mssage est traité comme si il avait été linéarisé avec le même mécanisme que le module de session. Le message sera alors délinéarisé, puis retourné au script. Cela vous permettra de recevoir facilement des tableaux ou des objets complexes dans votre script, émis par d'autres scripts PHP. Si unserialize vaut FALSE , le message sera retourné intact, et sans modifier les valeurs binaires. Le paramètre flags permet de passer des options pour configurer les appels msgrcv. Par défaut, il vaut 0, mais vous pouvez spécifier une ou plusieurs options en les combinant avec l'opérateur OR).
Lors de la réception réussie d'un message, la file est mise à jour comme ceci : msg_lrpid prend la valeur de l'identifiant de processus du processus appelant, msg_qnum est décrementé de 1 et msg_rtime prend la date et l'heure courante. msg_receive retourne TRUE en cas de succès et FALSE en cas d'échec. Si la fonction échoue, le paramètre optionnel errorcode contiendra le numéro d'erreur rencontré. Voir aussi msg_remove_queue , msg_send , msg_stat_queue et msg_set_queue . Cette fonction a été introduite en PHP 4.3.0. |
<< | msg_receive | >> |
msg_get_queue | Sémaphores et gestion de la mémoire partagée | msg_remove_queue |