msgsnd Неверный аргумент

Со следующим кодом:

#define MSGLEN 128

typedef struct {
long id;
char message[MSGLEN];
} data;

data msg;

msgsnd(msg_id, &msg, MSGLEN, IPC_NOWAIT);

Я получаю неверный аргумент, но

msgsnd(msg_id, &msg.message, MSGLEN, IPC_NOWAIT);

работает.
Конечно, я создал очередь сообщений с msgget а также kernel.msgmax = 65536

1

Решение

Хорошо … моя вина Для всех, кто сталкивается с той же проблемой:

msg.id = 1;

Идентификатор должен быть больше 0.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]