[M3devel] thread suspend/resume?

Jay K jay.krell at cornell.edu
Sun Nov 15 04:33:59 CET 2009


(just based on the checkin comment, haven't looked at the code)

 

Interesting.
Should we use these sorts of functions more?

  Direct non-Posix somewhat target-dependent thread suspend/resume?
NetBSD appears to have suspend/resume but maybe not "all".
Solaris has them too, thr_suspend((thread_t)pthread), and thr_continue.

I don't see an "all" function but haven't looked fully.

I see some evidence that Linux has them too but haven't tracked it down.

NT already uses SuspendThread/ResumeThread.

That leaves? Nothing at all?

 Ok I should look into Irix, AIX, HP-UX, OpenVMS, Tru64.

 And this stuff doesn't work yet for OpenBSD, it's using user threads.

 

 

Maybe thread suspend/resume is the "portable enough" interface, implement

it fairly directly with #ifdefs and only use the signals/semaphore on few systems?

 

 

(note that Darwin does have the semaphores that are avoided here,

just slightly different Mach semaphores)


 - Jay
 
> Date: Sat, 14 Nov 2009 22:41:39 +0000
> To: m3commit at elegosoft.com
> From: hosking at elego.de
> Subject: [M3commit] CVS Update: cm3
> 
> CVSROOT: /usr/cvs
> Changes by: hosking at birch. 09/11/14 22:41:39
> 
> Modified files:
> cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThreadC.c 
> 
> Log message:
> Reorder for readability.
> 
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20091115/3c58958b/attachment-0001.html>


More information about the M3devel mailing list