Mam problem z utworzeniem kolejki komunikatów standardu posix. Muszę zrobić do tego także osobną bibliotekę funkcji do obsługi kolejek komunikatów.
Fragment kodu z biblioteki:
mqd_t kolejka(const char *name, struct mq_attr *attr)
{
mqd_t des;
des = mq_open(name, O_CREAT | O_RDWR, 0644, attr);
return des;
}
Oraz fragment z głównego programu:
struct mq_attr atr;
const char *nazwa="kolejka";
atr.mq_maxmsg=20;
atr.mq_msgsize=400;
mqd_t des;
des = kolejka(nazwa, &atr);
Program się kompiluje, jednak przy uruchomieniu wyskakuje błąd "invalid argument".
Mam też pytanie co do samej struktury atrybutów kolejki. Nie muszę już jej pisać w swojej bibliotece, gdyż jest ona zdefiniowana w bibliotece <mqueue.h> i mogę z niej korzystać, tak?
Z góry dziękuję za pomoc :)