[so] nelamurire privind asincr.

George Ciobanu so@atlantis.cs.pub.ro
Sun, 7 Dec 2003 07:23:53 -0800 (PST)


--0-848732975-1070810633=:35469
Content-Type: text/plain; charset=us-ascii



Toma Monica <moniqqus@yahoo.com> wrote: 

Multumesc de raspuns, insa mai sunt ceva pb care mi-au
ramas neclare :).

1. Practic thread-urile worker vor trata cererile care
le sunt asignate de server secvential, doar ca
operatiile de citire/scriere se fac asincron? 

Dat fiind ca in server dai intr-un singur loc dai accept cererile vor fi secventializate oricum. Cererile nu sunt tratate secevential; ele vor fi pornite de 
folosind operatii operatii asincrone. Daca se termina mai multe in acelasi timp poti sa secventializezi raspunsurile ( desi pe linux, daca folosesti notificare folosind thread-uri ar putea raspunde chiar ele)

 

2. Thread-urile de tip a/b trebuie sa poata sa execute
mai multe operatii in acelasi timp, pe mai multe
fisiere?

Da

3. Thread-urile trebuie sa fie pornite tot timpul,
adica la lansarea server-ului sa se creeze toate
thread-urile worker ( sugestia ne-a fost data la
laborator) sau in momentul in care vine o cerere si
exista un "loc liber" sa se lanseze un thread
corespunzator operatiei, care sa se termine in
momentul in care s-a incheiat operatia pe care o
executa? 


Crearea lor se face la inceput. Oprirea lor se face numai atunci cand se opreste serverul (deci, in cazul nostru cam niciodata)

--- George Ciobanu wrote:
> Salut,
> 
> Serverul ar trebui sa faca numai load balancing;
> deci un thread de tip ls tb sa trimita raspunsul
> singur la client fara participarea serverului. E ok
> ca threadul de tip ls sa poata prelua numai o
> operatie la un moment dat, dar tb sa te asiguri ca
> serverul nu se blocheaza ( serverul poate trimite
> toate cele 5 cereri, iar threadul respectiv le
> trateaza secvential)
> Partea de asincronism este impusa numai pentru
> celelalte doua tipuri de threaduri. Dar, ca raspuns
> la intrebarea ta asincronismul implica apeluri
> neblocante.
> 
> Toma Monica wrote:
> 
> Buna, am si eu cateva nelamuriri, si desi risc sa
> par
> stupida, nu am gasit pe nimeni care sa poate sa imi
> fie de ajutor...
> Iata care sunt problemele mele:
> 
> 1. sa presupunem ca avem 5 clienti care se se
> conecteaza la server pt a cere un ls, iar serverul
> dispune doar de un thread care face aceasta
> operatie.
> Eu am ales ca serverul ( thread-ul principal) sa
> comunica cu thread-urile worker (prin care executa
> operatiile) folosind pipe-uri. Ideea e ca citirea de
> pe pipe am facut-o cu read(blocant) adica un thread
> worker al serverului isi verifica pipe-ul si dc are
> operatie o citeste de pe pipe si o executa, deci un
> thread va putea executa la un moment dat numai o
> operatie din cele care ii sunt asignate de server ->
> contravine aceasta metoda cu ideea de asincron? 
> Revenind la cei 5 clienti, dupa ce se obtine
> rezultatul listarii, acesta trebuie trimis la
> clienti.Rezultatul este memorat pe server intr-un
> fisier si apoi citit si trimis la client. Trebuie
> aceasta citire sa fie si ea asincrona?
> 
> Probabil voi astepta raspuns la aceasta intrebare
> inainte sa mai inaintez si altele. S-ar putea sa ma
> lamuresc.
> 
> Se poate folosi functia sprintf?
> 
> Da
> 
> 
> 
> =====
> 
> I dream of finding myself laughing!
> 
> 
> __________________________________
> Do you Yahoo!?
> New Yahoo! Photos - easier uploading and sharing.
> http://photos.yahoo.com/
> _______________________________________________
> so mailing list
> so@atlantis.cs.pub.ro
>
http://atlantis.cs.pub.ro/cgi-bin/mailman/listinfo/so
> 
> 
> ---------------------------------
> Do you Yahoo!?
> New Yahoo! Photos - easier uploading and sharing


=====

I dream of finding myself laughing!


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/
_______________________________________________
so mailing list
so@atlantis.cs.pub.ro
http://atlantis.cs.pub.ro/cgi-bin/mailman/listinfo/so



---------------------------------
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing
--0-848732975-1070810633=:35469
Content-Type: text/html; charset=us-ascii

<DIV><BR><BR><B><I>Toma Monica &lt;moniqqus@yahoo.com&gt;</I></B> wrote: 
<BLOCKQUOTE class=replbq style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #1010ff 2px solid">
<P><BR>Multumesc de raspuns, insa mai sunt ceva pb care mi-au<BR>ramas neclare :).<BR><BR>1. Practic thread-urile worker vor trata cererile care<BR>le sunt asignate de server secvential, doar ca<BR>operatiile de citire/scriere se fac asincron? </P>
<P>Dat fiind ca in server dai intr-un singur loc dai <STRONG>accept </STRONG>cererile vor fi secventializate oricum. Cererile nu sunt tratate secevential; ele vor fi pornite de <BR>folosind operatii operatii asincrone. Daca se&nbsp;termina mai multe in acelasi timp&nbsp;poti sa secventializezi raspunsurile ( desi pe linux, daca folosesti notificare folosind thread-uri&nbsp;ar putea raspunde chiar ele)</P>
<P>&nbsp;</P>
<P>2. Thread-urile de tip a/b trebuie sa poata sa execute<BR>mai multe operatii in acelasi timp, pe mai multe<BR>fisiere?</P>
<P>Da<BR><BR>3. Thread-urile trebuie sa fie pornite tot timpul,<BR>adica la lansarea server-ului sa se creeze toate<BR>thread-urile worker ( sugestia ne-a fost data la<BR>laborator) sau in momentul in care vine o cerere si<BR>exista un "loc liber" sa se lanseze un thread<BR>corespunzator operatiei, care sa se termine in<BR>momentul in care s-a incheiat operatia pe care o<BR>executa? <BR></P>
<P>Crearea lor se face la inceput. Oprirea lor se face numai atunci cand se opreste serverul (deci, in cazul nostru cam niciodata)</P>
<P>--- George Ciobanu <CDANGEORGE@YAHOO.COM>wrote:<BR>&gt; Salut,<BR>&gt; <BR>&gt; Serverul ar trebui sa faca numai load balancing;<BR>&gt; deci un thread de tip ls tb sa trimita raspunsul<BR>&gt; singur la client fara participarea serverului. E ok<BR>&gt; ca threadul de tip ls sa poata prelua numai o<BR>&gt; operatie la un moment dat, dar tb sa te asiguri ca<BR>&gt; serverul nu se blocheaza ( serverul poate trimite<BR>&gt; toate cele 5 cereri, iar threadul respectiv le<BR>&gt; trateaza secvential)<BR>&gt; Partea de asincronism este impusa numai pentru<BR>&gt; celelalte doua tipuri de threaduri. Dar, ca raspuns<BR>&gt; la intrebarea ta asincronismul implica apeluri<BR>&gt; neblocante.<BR>&gt; <BR>&gt; Toma Monica <MONIQQUS@YAHOO.COM>wrote:<BR>&gt; <BR>&gt; Buna, am si eu cateva nelamuriri, si desi risc sa<BR>&gt; par<BR>&gt; stupida, nu am gasit pe nimeni care sa poate sa imi<BR>&gt; fie de ajutor...<BR>&gt; Iata care sunt problemele mele:<BR>&gt; <BR>&gt; 1. sa presupunem ca avem 5
 clienti care se se<BR>&gt; conecteaza la server pt a cere un ls, iar serverul<BR>&gt; dispune doar de un thread care face aceasta<BR>&gt; operatie.<BR>&gt; Eu am ales ca serverul ( thread-ul principal) sa<BR>&gt; comunica cu thread-urile worker (prin care executa<BR>&gt; operatiile) folosind pipe-uri. Ideea e ca citirea de<BR>&gt; pe pipe am facut-o cu read(blocant) adica un thread<BR>&gt; worker al serverului isi verifica pipe-ul si dc are<BR>&gt; operatie o citeste de pe pipe si o executa, deci un<BR>&gt; thread va putea executa la un moment dat numai o<BR>&gt; operatie din cele care ii sunt asignate de server -&gt;<BR>&gt; contravine aceasta metoda cu ideea de asincron? <BR>&gt; Revenind la cei 5 clienti, dupa ce se obtine<BR>&gt; rezultatul listarii, acesta trebuie trimis la<BR>&gt; clienti.Rezultatul este memorat pe server intr-un<BR>&gt; fisier si apoi citit si trimis la client. Trebuie<BR>&gt; aceasta citire sa fie si ea asincrona?<BR>&gt; <BR>&gt; Probabil voi astepta
 raspuns la aceasta intrebare<BR>&gt; inainte sa mai inaintez si altele. S-ar putea sa ma<BR>&gt; lamuresc.<BR>&gt; <BR>&gt; Se poate folosi functia sprintf?<BR>&gt; <BR>&gt; Da<BR>&gt; <BR>&gt; <BR>&gt; <BR>&gt; =====<BR>&gt; <BR>&gt; I dream of finding myself laughing!<BR>&gt; <BR>&gt; <BR>&gt; __________________________________<BR>&gt; Do you Yahoo!?<BR>&gt; New Yahoo! Photos - easier uploading and sharing.<BR>&gt; http://photos.yahoo.com/<BR>&gt; _______________________________________________<BR>&gt; so mailing list<BR>&gt; so@atlantis.cs.pub.ro<BR>&gt;<BR>http://atlantis.cs.pub.ro/cgi-bin/mailman/listinfo/so<BR>&gt; <BR>&gt; <BR>&gt; ---------------------------------<BR>&gt; Do you Yahoo!?<BR>&gt; New Yahoo! Photos - easier uploading and sharing<BR><BR><BR>=====<BR><BR>I dream of finding myself laughing!<BR><BR><BR>__________________________________<BR>Do you Yahoo!?<BR>New Yahoo! Photos - easier uploading and
 sharing.<BR>http://photos.yahoo.com/<BR>_______________________________________________<BR>so mailing list<BR>so@atlantis.cs.pub.ro<BR>http://atlantis.cs.pub.ro/cgi-bin/mailman/listinfo/so</P></BLOCKQUOTE></DIV><p><hr SIZE=1>
Do you Yahoo!?<br>
<a href="http://pa.yahoo.com/*http://us.rd.yahoo.com/evt=21260/*http://photos.yahoo.com">New Yahoo! Photos - easier uploading and sharing</a>
--0-848732975-1070810633=:35469--