Next: La primitive d'extraction Up: Les files de messages Previous: Utilisation des files de

L'envoi de message

#include <sys/msg.h>
int msgsnd (int dipc, const void *p_msg, int lg, int options);
Envoie dans la file dipc le message pointé par p_msg.

lg taille du message égale à sizeof(struct msgbuf)-sizeof(long), le type du message n'étant pas compté dans cette longueur.

Valeur de retour (0) succes (-1) échec.

Valeur de errno en cas d'échec:

EINVAL
file inexistante
EPERM
pas de droits d'écriture
EINVAL
type de message incorrect

Si IPC_NOWAIT est positionné, l'envoi de messages sur une file pleine n'est plus bloquant, alors dans le cas d'une file pleine, la fonction retourne -1 et errno est positionné à EAGAIN.

Un appel de msgsnd bloqué peut être interrompu par un signal ou par la destruction de la file de message. Dans ce cas, elle renvoie (-1) et errno est positionné à [EINTR] ou [EIDRM].



Dominique REVUZ
Mon Feb 2 12:10:31 MET 1998
Une Bug Un mail Merci