Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Design problem - thready

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Design problem - thready

Autor: Kra

20:51:45 15.11.2010

FIFO, semtamfor, mam to. Diky :)

Citovat příspěvek

 

Re: Design problem - thready

Autor: pf1957

19:04:06 15.11.2010

Kra Napsal:


> Je tohle dobry navrh? Jak udelat ten seznam
> soboru, normalni pole? Jak zaridit synchronizaci
> mezi druhym vlaknem a temi dalsimi 2ma
> skenovacimi?

Standardnim reseni je FIFO s blokujicim semaforem na vystupu a pokud bys chtel kontrolovat delku fronty, tak jeste se semaforem na vstupu.

Citovat příspěvek

 

Design problem - thready

Autor: Kra

18:30:40 15.11.2010

Ahoj,

Potreboval bych vytvorit vicethreadovou aplikaci s cca 4 thready. Jde o aplikaci, ktera bude prohledavat disk a skenovat vsechny nalezene soubory, tak me napadlo, ze by to byl dobry priklad se naucit delat s thready (neresim vlastni usporu casu, jde mi o to se to naucit). Aktualne mam aplikaci jen 2 threadovou, jeden thread je UI a druhy prochazi disk/skenuje soubory a vraci vysledky do UI.

Novy koncept bych si predstavoval cca tak, ze jeden thread by byl UI, druhy by generoval seznam souboru ke skenovani a dalsi 2 thready by provadely to samotne skenovani. Ted ale nevim, jak to zrealizovat. Napadlo me, ze by si ten druhy thread mohl uchovavat seznam o treba 20ti souborech a ty 2 dalsi skenovaci thready by z toho seznamu odebiraly soubory po jednom (pricemz ten druhy thread by seznam nasledne doplnil a tak porad dokola).

Je tohle dobry navrh? Jak udelat ten seznam soboru, normalni pole? Jak zaridit synchronizaci mezi druhym vlaknem a temi dalsimi 2ma skenovacimi?

Diky za napady,

R.

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: