rwlock [Was: Re: Uzivatelska pritulnost Linuxu (dlouhe)]
Stanislav Meduna
stano na trillian.eunet.sk
Středa Květen 10 18:55:07 CEST 2000
In article <20000509133247.5E4A.0 na argo.troja.mff.cuni.cz> you wrote:
: Brani neco provadet synchronizaci mezi procesy pomoci zamykani
: souboru a synchronizaci v ramci jednoho procesu pomoci pthread
: mutexu a spol.? (Uznavam, ze je to trochu prace.)
To ma samozrejme napadlo tiez, ale to proste rozumne nejde
(a konkretne v danej aplikacii by bol overhead pravdepodobne
daleko vyssi nez to, co by som tym ziskal).
Je tu ale vaznejsi problem: pthreads mi garantuje, ze sa
writer dostane k lizu (pokial spravne interpretujem
nasledujuci trochu zmateny text - rozdiel medzi blocked
a waiting mi trochu unika):
> The pthread_rwlock_rdlock() function applies a read lock
> to the read-write lock referenced by rwlock. The calling
> thread acquires the read lock if a writer does not hold
> the lock and there are no writers blocked on the lock.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> It is unspecified whether the calling thread acquires
> the lock when a writer does not hold the lock and there
> are writers waiting for the lock.
> ...
> Implementations are allowed to favour writers over
> readers to avoid writer starvation.
Toto IMHO pri "dvojstupnovej" implementacii zaistit nejde.
Zdravi
--
Stano
Další informace o konferenci Linux