[M3devel] pthread_atfork
Jay K
jay.krell at cornell.edu
Sat Apr 23 12:14:49 CEST 2011
This is in now.
Mika, can you try user threads again, and this time remove -pthread/-pthreads/-lpthread from your config files?
Really, if user threads are to be supported, I wish they were easier to use -- no need to rebuild m3core
or anything else, and specifiable in link or runtime commads.
More details below:
From: jay.krell at cornell.edu
To: m3devel at elegosoft.com
Subject: pthread_atfork
Date: Tue, 19 Apr 2011 06:07:01 +0000
I propose that RTProcess__RegisterForkHandlers be implemented at least 3 times:
...
manually for userthreads:
...
take a lock, maintain the three lists/growable arrays, whatever
probably implement it in Modula-3
[Jay April 23] done: implemented in C, locking via Disable/EnableSwitching, ok?
And then, introduce RTProcess__Fork.
Replace all calls to Unix.fork with it.
Also implemented around 3 times.
..
RTProcessWin32__Fork: assert(false)
fork+exec must be implemented through higher level operations
fork+do more work isn't possible
[Jay April 23] instead, just not provided
This doesn't help us figure out what is wrong with our pthreads implementation.
It just makes user threads not require -pthread.
[Jay April 23] still a major concern in need of significant investigation
- Jay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20110423/9eb5c86c/attachment-0002.html>
More information about the M3devel
mailing list