[so] [tema2][linux]problema sincronizare client-gateway
Alex Gorunescu
algorunescu at yahoo.com
Thu Apr 7 12:51:06 EEST 2011
Cred ca este o problema cu sincronizarea client-server. Sau absenta ei. Problema
este urmatoarea. De vreo doua zile ma tot chinui sa-mi dau seama de ce imi pica
random legatura dintre client si gateway. Mai precis acelasi test (oricare) rula
de 3-4 ori bine, dupa care gateway-ul dadea eroare citire din coada cand pornea,
iar mergea de cateva ori bine, iar o lua razna. Asa ca, dupa multe incercari de
tot felul, mi-a trecut prin cap sa bag un unlink la coada gateway inainte s-o
creez sa vad ce se intampla. Comportamentul s-a schimbat. Acum ramanea blocat pe
receive. Atunci mi-a picat fisa. Clientul si gateway-ul folosesc aceeasi resursa
(coada) dar fara vreun fel de sincronizare intre ele. Voi in teste rulati
clientul imediat dupa gateway. Ca urmare uneori clientul ajunge la coada inainte
sa o creeze gateway-ul si o creeaza el. Ca urmare uneori apuca gateway-ul s-o
creeze si totul mergea perfect, alteori o creea clientul si totul o lua razna.
Nu stiu cum o creeaza clientul dar gateway-ul meu da eroare cand incerca sa
citeasca din ea. Daca pun unlink la inceput, atunci clientul face coada, pune
mesajul in ea, gateway-ul ajunge si el la punctul magic, o sterge si o recreeaza
si dupa sta ca prostul sa astepte un mesaj care nu va mai veni niciodata. Ca sa
rezolv problema cu toate testele am pus un sleep de o secunda in teste intre
rularea gateway-ului si a clientului si totul a inceput sa mearga cum trebuie.
Am rulat toate cele 9 teste de mai multe ori la rand si nu s-a mai blocat
niciodata.
Acum intrebarea este, fac eu ceva gresit de apare problema asta ?
Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20110407/52922964/attachment.htm>
More information about the so
mailing list