Przemek:
Something has changed for this case since Aug 2007 ?
"It mean that (in Linux) Harbour and xHarbour can not share dbf files ?"
Your last message included below
I do not found some reference for this difference between
Harbour-xHarbour in doc\xhb-diff.txt
David Macias
On Thu, 02 Aug 2007, David Arturo Macias Corona wrote:
> >The application which was working in background keeping dbf file open
> >was compiled by Harbour and blocked only other Harbour processes because
> >Harbour and xHarbour use different methods to emulate DOS/Windows DENY
> >flags in POSIX systems.
> It mean that (in Linux) Harbour and xHarbour can not share dbf files ?
Now. It means that POSIX systems do not have EXCLUSIVE mode.
Everything is open in SHARED mode. I added emulation for DENY
flags but it's only emulation and I created two versions for
such emulation. Harbour has both - xHarbour only one.
But if user needs real portability then he has to create code
working in SHARED mode only or sooner or later he will make
sth what breaks POSIX locks semantic, f.e. he open and close
already open file what clears all FCNTL locks set on this
file by the same process using different file handle because
kernel recognize them as pair: PID+INODE and both will be the
same.
I do not have time now for detail POSIX locks description and
what are the differences between DOS/Windows and rest of normal ;-)
world. Few years ago I sent such description to xHarbour.news
and it should be in some archive.
Probably sooner or later someone will add DOS DENY flag emulation
directly to Linux kernels for easier implementation things like SAMBA
server and in such case I'll also add it core code. Maybe it's already
happened - I haven't time to trace kernel modification in last two
years.
best regards,
Przemek
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour