Когда произойдет сбой msgrcv?

Оглавление:

Когда произойдет сбой msgrcv?
Когда произойдет сбой msgrcv?
Anonim

Функция msgrcv завершится ошибкой, если: [E2BIG] Значение mtext больше, чем msgsz и (msgflg & MSG_NOERROR) равно 0. [EACCES]

Блокирует ли Msgrcv?

Функции msgsnd и msgrcv могут выполняться как блокирующие или неблокирующие операции. Неблокирующие операции допускают асинхронную передачу сообщений - процесс не приостанавливается в результате отправки или получения сообщения.

Удаляет ли msgrcv сообщение из очереди?

Системный вызов msgrcv удаляет сообщение из очереди, указанной msqid, и помещает его в буфер, на который указывает msgp. Аргумент msgsz указывает максимальный размер в байтах для члена mtext структуры, на которую указывает аргумент msgp.

Как работает msgrcv?

Функция msgrcv считывает сообщение из очереди сообщений, указанной параметром msqid, и помещает его в пользовательский буфер, на который указывает параметр msgp. Параметр msgp указывает на определяемый пользователем буфер, который должен содержать следующее: Поле типа long int, указывающее тип сообщения.

Что возвращает msgrcv?

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

После успешного завершения msgrcv возвращает значение, равное количеству байтов, фактически помещенных в буфер mtext. В противном случае сообщение не будет получено, msgrcv вернет (ssize_t)-1, а errno будет установлен для указания ошибки.

Рекомендуемые: