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.

Другие вопросы по тегам