[so] [Tema2][Linux] Gateway

Mihail Costea mihail.costea2005 at gmail.com
Mon Apr 2 22:29:30 EEST 2012


La fel de bun ca ce era si inainte.
Am umblat la run_test.sh si am pus un sleep(2) la exec_client. Apoi am
rulat test dupa test de mana si trec toate.

Apoi dau un make -f Makefile.checker si s-a dus totul.
O_EXCL nu ajuta cu absolut nimic, fiindca nu se creaza coada si da eroare
(e de astept daca exista). Din acest motiv dau apoi mq_open doar cu 2
argumente ca sa o deschida doar, dar primesc asta la citire din
coada: (unix_queue.c, 105): mq_recv: Bad file descriptor.

Desi folosesc si la servere acelasi mecanism de creare a cozilor pentru
comunicatia cu clientul acolo rezolv cu un simplu semafor care ma asigura
ca totul se intampla in ordine. Dar aici nu am acces la client si nu pot sa
il intarzii.

Nu e normal ca acel client sa porneasca dupa ceva vreme dupa gateway?

Mihai



2012/4/2 Razvan Crainea <razvan.crainea at gmail.com>

> 2012/4/2 Claudia Calinescu <claudiamcalinescu at gmail.com>:
> >
> >>
> >> Ai putea încerca să creezi coada cu atributele pe care le dai tu, dar
> >> doar dacă nu există deja (Hint: man mq_open, O_EXCL). În caz că
> >> există, pur și simplu doar o deschizi, fără să specifici atributele.
> >
> >
> > Salut,
> >
> > Nu ințeleg cum ar fi asta diferit de a apela un open fară O_EXCL.
> >
>
> Din câte am înțeles eu, problema lui este că dacă folosește flag-ul
> O_CREAT și coada există, parametrul attr nu este ignorat și ar
> suprascrie atributele cozii. Folosind metoda de mai sus, te-ai asigura
> că dacă există într-adevăr coada, o deschizi cu atributele deja
> existente.
>
> --
> Răzvan Crainea
> _______________________________________________
> http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20120402/5abcc15e/attachment.htm>


More information about the so mailing list