NU trebuie folosite threaduri de nici o culoare in linux. Unul singur e suficient sa faca totul singur. Pe windows am zis pool de threaduri egal cu nr. de procesoare din sistem...asta inseamna un singur thread pentru un sistem cu un procesor. Si trebuie pool pentru ca completion ports lucreaza cu un pool de threaduri. Threadurile trebuie sa fie total independente, nu colaboreaza. Se ocupa mecanismul de completion ports de distribuirea sarcinilor. Tu trebuie sa ai grija pe windows doar sa nu ajungi sa procesezi acelasi client din mai multe threaduri deodata ca atunci rezulta sigur probleme.
<br><br>In concluzie, nu iti trebuie prea mult threading pe windows, iar pe linux, deloc.<br><br>Cat despre timeout-uri, dupa cum am zis pe grup acum cateva zile, trebuie sa bagati buffere mai mari. In momentul in care ai lucrezi cu buffere de 512 bytes e prea mult overhead si depaseste timeout-ul. Dupa cum vezi, se poate face astfel incat sa treaca lejer testele cu peste 1 minut ramas. Pe windows mai e o problema cu delay-ul cauzat de accept(), dar peste asta nu poti trece...oricum, dupa cum vezi, se pot trece si alea cu 40 de sec. ramase.
<br>Cheia sunt bufferele :).<br><br><div><span class="gmail_quote">On 22 Dec 2006 08:16:42 -0000, <b class="gmail_sendername">Costin B</b> &lt;<a href="mailto:costinb@rdslink.ro">costinb@rdslink.ro</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Buna ziua,<br><br>Am si eu o problema cu timeouturile si am nevoie de sugestii, daca se poate.<br><br>Este ok sa folosesc threaduri in aplicatie? Daca da, cam ce prioritate ar trebui sa<br>atribui threadurilor care fac treaba efectiv in comparatie cu threadul care accepta conexiuni?
<br><br>Pe Windows este nevoie ca threadurile sa &quot;colaboreze&quot; sau daca au aceeasi prioritate vor fi programate aproximativ in mod egal?<br><br>Si in ultimul rand (intreb si eu): timeout-ul&nbsp;&nbsp;de 120 de secunde este ok la tema 4, cand la tema 1, de exemplu, era tot de 120 secunde?
<br><br>_______________________________________________<br>so mailing list<br><a href="mailto:so@cursuri.cs.pub.ro">so@cursuri.cs.pub.ro</a><br><a href="http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so">http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
</a><br></blockquote></div><br>