Josh Close writes:
> Is there a way of getting them returned in one at a time? I could
> always use a temp file, but I'd rather not. I have to use fork also
> because I'm using some functins that aren't thread safe.

If the underlying OS is POSIX compliant and the amount of data written is
not greater than PIPE_BUF, then the write will be atomic.  POSIX guarantees
that PIPE_BUF is at least 512 bytes.

A pipe isn't a file, so you can't lock it.  One alternative is to create a
separate file and use it for synchronization.  Mutexes, etc. only work for
threads in the same process, not separate processes.

Another alternative is to use threads and use a mutex around the functions
that are not thread safe.

-- 
David Phillips <david at acz.org>
http://david.acz.org/


_______________________________________________
TCLUG Mailing List - Minneapolis/St. Paul, Minnesota
Help beta test TCLUG's potential new home: http://plone.mn-linux.org
Got pictures for TCLUG? Beta test http://plone.mn-linux.org/gallery
tclug-list at mn-linux.org
https://mailman.real-time.com/mailman/listinfo/tclug-list