[so] [Tema2][Linux] Gateway

Razvan Crainea razvan.crainea at gmail.com
Mon Apr 2 21:57:15 EEST 2012


2012/4/2 Mihail Costea <mihail.costea90 at gmail.com>:
> Salut,
>
> Daca pornesc gateway-ul inainte de client totul e bine si frumos. Merge
> totul perfect si imi trec si testele (serverele nu conteaza cand pornesc).
> Dar daca pornesc client-ul inainte de gateway s-a stricat tot.
>
> Care e problema: din ce am observat eu coada "gateway" creata de Gataway are
> dimensiunea 0 si mesajele se trimit cum trebuie. Daca mai intai porneste
> clientul atunci va avea dimensiunea 46, cum e de asteptat (s-a trimis un
> mesaj). Eu la mq_open la Gateway dau attr cu urmatoarele valori:
> attr.mq_flags = 0;
> attr.mq_maxmsg = 10;
> attr.mq_msgsize = sizeof(message_t);
> attr.mq_curmsgs = 0;
>
> Deci ar trebui sa o creez cu mq_curmsgs = 1 si nu 0, ceea ce nu o sa pot
> face decat daca stau si ma uit daca exista clienti deja. Pot sa dau msg_get,
> dar at ce fac daca porneste mai intai Gateway-ul?
> Cum rezolv problema asta, ca eu unul am pierdut deja mult prea mult timp cu
> chestia asta.
>

Salut, Mihai!

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.

-- 
Răzvan Crainea


More information about the so mailing list