<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Tony, it seems to me that ThreadWin32.m3 / ThreadPThread.m3 can be largely combined into common code.<BR>
 <BR>
If you come up with common names for<BR>
 EnterCriticalSection vs. pthread_mutex_lock => SysLock?<BR>
 LeaveCriticalSection vs. pthread_mutex_unlock => SysUnlock?<BR>
 TlsGetValue vs. pthread_getspecific => PerThreadGet?<BR>
 TlsAlloc vs. pthread_key_create => PerThreadAlloc?<BR>
 etc.<BR>
 <BR>
Then you can make a bunch of the code identical.<BR>
 <BR>
I realize there is a more serious diversion wrt condition variables not being supported (unless<BR>
we drop pre-Vista support, which I'm not inclined to).<BR>
 <BR>
ThreadSuspend/Resume I think is already somewhat abstracted,<BR>
due to how Darwin/FreeBSD are written.<BR>
The Win32 names are pretty good in many places imho.<BR>
 <BR>
There may even be commonality with ThreadPosix.m3.<BR>
 <BR>
 <BR>
You know, we have:<BR>
ThreadPosix.m3 1400 lines<BR>
ThreadPThread.m3 1400 lines<BR>
ThreadWin32.m3 1000 lines<BR>
 <BR>
surely we don't need that much.<BR>
 <BR>
 <BR>
 - Jay<BR>
<BR><BR><BR><BR><BR> <BR>                                        </body>
</html>