Hi radu!

On Mon, 17 Mar 2003, [EMAIL PROTECTED] wrote:

> On Mon, Mar 17, 2003 at 07:58:31PM +0200, Bogdan Marinca wrote:
> > Salut.
> > Cum imi dau seama (printr'o functie in C, sau in alta maniera) ca un fisier
> > nu are nici un descriptor asociat deschis cu O_WRONLY sau O_RDWR de catre un proces
> > la un anumit moment de timp?
> > 
> > Ideea este ca am 2 procese, unul creeaza sau modifica fisiere iar altul le 
> > prelucreaza
> > (deci lucreaza cu ele doar cu O_RDONLY setat). Procesele lucreaza concurent. As 
> > vrea o solutie
> > pentru ca procesul care prelucreaza fisierul sa faca acest lucru *numai* dupa ce 
> > si ultimul byte
> > a fost scris in el de catre procesul care scrie (adica sa nu lucreze cu fisiere 
> > incomplete).
> > 
> > Multumesc frumos.
> > 
> > Bogdan Marinca
> > --
> > Pentru dezabonare, trimiteti mail la 
> > [EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'.
> > REGULI, arhive si alte informatii: http://www.lug.ro/mlist/
> > 
> > 
> Umm.... man flock?

Din pacate procesul care scrie nu il pot controla. si el nu foloseste
flock. El doar scrie in fisier cu O_WRONLY si atat. Deci nu cred ca merge 
cu flock. (De fapt am si testat si nu merge, am incercat un flock cu LOCK_EX, 
sau trebuia sa incerc cu alt flag?).
Nu dati cu pietre dar aceasta functionalitate am folosit-o in Win32 :)
intr'o expresie de forma
infile.Open(in, CFile::modeRead | CFile::typeBinary | CFile::shareDenyWrite
care nu deschidea fisieru daca mai era deja deschis.

Trebuie sa fie si in linux asa ceva.

Merci

--
Pentru dezabonare, trimiteti mail la 
[EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'.
REGULI, arhive si alte informatii: http://www.lug.ro/mlist/


Raspunde prin e-mail lui