¿Cuándo fallará msgrcv?

Tabla de contenido:

¿Cuándo fallará msgrcv?
¿Cuándo fallará msgrcv?
Anonim

La función msgrcv fallará si: [E2BIG] El valor de mtext es mayor que msgsz y (msgflg & MSG_NOERROR) es 0. [EACCES]

¿Msgrcv bloquea?

Las funciones msgsnd y msgrcv pueden realizarse como operaciones de bloqueo o de no bloqueo. Las operaciones sin bloqueo permiten la transferencia asincrónica de mensajes: el proceso no se suspende como resultado del envío o la recepción de un mensaje.

¿El msgrcv elimina el mensaje de la cola?

La llamada al sistema msgrcv elimina un mensaje de la cola especificada por msqid y lo coloca en el búfer al que apunta msgp. El argumento msgsz especifica el tamaño máximo en bytes para el texto m del miembro de la estructura a la que apunta el argumento msgp.

¿Cómo funciona msgrcv?

La función msgrcv lee un mensaje de la cola de mensajes especificada por el parámetro msqid y lo coloca en el búfer definido por el usuario señalado por el parámetro msgp. El parámetro msgp apunta a un búfer definido por el usuario que debe contener lo siguiente: Un campo de tipo long int que especifica el tipo de mensaje.

¿Qué devuelve msgrcv?

VALOR DEVUELTO

Al finalizar con éxito, msgrcv devuelve un valor igual al número de bytes realmente colocados en el búfer mtext. De lo contrario, no se recibirá ningún mensaje, msgrcv devolverá (ssize_t)-1 y se configurará errno para indicar el error.

Recomendado: