On Mon, 2006-02-13 at 03:11 +0100, fons adriaensen wrote:
For synchronisation a POSIX sema in shared memory is quite
fast. Alternatives are a named one or again a pipe. Didn't
yet test condition variables in shared memory. If those work
that would make it rather easy to make e.g. my clthreads lib's
ITC functions work tranparently across process boundaries.
Exactly, it's quite useful. I've tested it extensively with NPTL 2.3.6
and the multiprocess and multithread versions perform identically.
One big question I have not answered yet is whether the file has to be
on a tmpfs for operations on the synchronizaion objects to be RT safe.
So far I have been putting it in /dev/shm just to be safe.
AFAIK, putting synchronisation objects in shared
memory will
not work with LinuxThreads. But how long will they still be
used ? Sooner or later new apps will require a 2.6 kernel,
and the initial problems with NPTL are well in the past
now.
If this is the case I agree fully, it's too useful a feature to allow
LinuxThreads support to hold us back.
Lee