[so] cozi de mesaje

Delia Adiaconitei delia.adiaconitei at gmail.com
Sat Apr 4 14:38:56 EEST 2009


Am o problema legata de noul api. Creez o coada (fara flag-ul O_NONBLOCK) pe
server astfel:

mqd_t m = mq_open("/coada", O_CREAT | O_RDWR, 0666, NULL);
char buf[1024];
usigned int prio = 10;
int ret = mq_receive(m, buf, 1024, &prio);
printf("ret = %d, errno = %d", ret, errno);

Deci, deschid o coada si citesc din ea. Ma astept ca apelul de citire sa fie
blocant deoarece coada mea este goala.
Dar, mq_receive() returneaza -1. Primesc eroarea errno = 38 (adica ENOSYS -
"Function not implemented") - iar la aceasta adresa
http://www.opengroup.org/onlinepubs/009695399/functions/mq_receive.html
spun despre ENOSYS ca nici nu mai exista in acest api.
Eu am nevoie de apel blocant la aceasta functie. El nu este blocant by
default ?
Gresesc undeva ?

Eu sunt studenta in anul 5 si fac tema pentru restanta. Cand am facut eu
laboratorul acesta prezenta api-ul vechi cu msgget(), etc. Se poate face o
exceptie pentru noi cei de anul 5 sa le putem utiliza pe cele vechi ? Macar,
cu acesta am lucrat.

Multumesc.
Delia Adiaconitei
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20090404/0a56f173/attachment.htm>


More information about the so mailing list