Linux x86_64IPC & sincronização#244
mq_notify
Registra (ou cancela) a notificação assíncrona de que uma mensagem chegou em uma fila vazia.
Descrição
Permite que um processo seja avisado via sinal ou thread nova quando uma mensagem chega, sem precisar bloquear em mq_timedreceive.
Header:
mqueue.hman 2Desde o kernel 2.6.6Assinatura
int mq_notify(mqd_t mqdes, const struct sigevent * sevp);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| mqdes | mqd_t | Descritor da fila. |
| sevp | const struct sigevent * | Como notificar, ou NULL para cancelar o registro atual. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | mqdesmqd_t |
| rsi | argumento 2 | sevpconst struct sigevent * |
Valor de retorno
0 em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EBADF(9)
- Descritor de arquivo inválido.
- EBUSY(16)
- Dispositivo ou recurso ocupado.
- EINVAL(22)
- Argumento inválido.