Martin Beránek wrote:
> Zdravím,
> 
> řeším následující problém:
> 
> Je server který příjmá data ukládá je do adresáře jako soubory - pro
> každé příchozí spojení je vytvořeno samostatné "klientské" vlákno.
> 
> Dále v systému běží jedno "čistící vlákno", které promázává přijatá data.
> 
> Podmínkou je, že čistící vlákno nesmí vykonávat svou činnost, pokud běží
> nějaké klientské vlákno - a naopak - nesmí se spustit klientské vlákno,
> dokud čisticí vykonává sou činnost.
> 
> Jaký druh zámků je na toto vhodný?

Tohle je klasický problém nazývaný "čtenáři a písaři", řešení
viz Google.

Nicméně mi na tohle popisu nesedí, že tam nikde není zmínka
o nějakém zpracovávajícím vlákně. Pokud zpracovává to čistící
vlákno, je to zbytečně neefektivní, protože synchronizovat
stačí nad jednotlivými soubory, ne nad celým adresářem.
Stačí, aby zpracovávající vlákno nezačalo zpracovávat dřív,
než zapisující vlákno dokončí zápis.

Takže je možné mít i více zpracovávajících vláken,
a ta mohou po zpracování soubory i smazat.


Makub
-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno             Martin Kuba
Institute of Computer Science    email: [EMAIL PROTECTED]
Masaryk University             http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
--------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Odpovedet emailem