www.digitalmars.com         C & C++   DMDScript  

D - pthreads-win32 anyone?

reply "Matthew" <matthew.hat stlsoft.dot.org> writes:
In testing and debugging UNIXSTL (http://unixstl.org/) and recls
(http://recls.org/) and some D libraries - MmFile ExeLoader - I often prefer to
remain in the comfort of my anachronistic Visual Studio 98, and to help me in
this regard I use two UNIX emulation libraries.

The first of these, unixem (http://synesis.com.au/software/index.html#unixem) is
a very simple little set of mappings over Win32, for mmap(), opendir(), glob()
and some others, that I wrote for this purpose. It's not industry strength, but
for dev/test it's more than adequate (or has been so far, at least).

The second is the wonderful GNU pthreads-win32 project
(http://sources.redhat.com/pthreads-win32/), which is very much a serious
effort,
and worth the time of anyone who is trying to develop cross-platform
multi-threaded code.

The purpose of this post is to see what people would think about our using
pthreads-win32 to abstract all (current) platforms to a PTHREADS interface, and
thereby ease the effort of writing the threaded support for the language, and
for
the libraries that explicitly address threading?

Let me know your thoughts.

Cheers

Matthew
Apr 25 2004
next sibling parent Ben Hinkle <bhinkle4 juno.com> writes:
Matthew wrote:

 In testing and debugging UNIXSTL (http://unixstl.org/) and recls
 (http://recls.org/) and some D libraries - MmFile ExeLoader - I often
 prefer to remain in the comfort of my anachronistic Visual Studio 98, and
 to help me in this regard I use two UNIX emulation libraries.
 
 The first of these, unixem
 (http://synesis.com.au/software/index.html#unixem) is a very simple little
 set of mappings over Win32, for mmap(), opendir(), glob() and some others,
 that I wrote for this purpose. It's not industry strength, but for
 dev/test it's more than adequate (or has been so far, at least).
 
 The second is the wonderful GNU pthreads-win32 project
 (http://sources.redhat.com/pthreads-win32/), which is very much a serious
 effort, and worth the time of anyone who is trying to develop
 cross-platform multi-threaded code.
 
 The purpose of this post is to see what people would think about our using
 pthreads-win32 to abstract all (current) platforms to a PTHREADS
 interface, and thereby ease the effort of writing the threaded support for
 the language, and for the libraries that explicitly address threading?
 
 Let me know your thoughts.
 
 Cheers
 
 Matthew
Funny you should bring this up because I was just looking around for this sort of thing the other day. The "Waitable Objects" thread got me thinking about the same thing. Plus there's the whole "port Doug Lea's concurrent library" project. Anyhow, I didn't get too far in the win32 pthread direction so I made a stab at a Java-like wait/notify implementation for win32 and linux (attached). A good solid pthread on win32 might replace the Event code that I'm using (which was basically suggested by Mike Parker in the Waitable Objects thread). Once I got some of the concurrent lib working I was thinking of putting it on dsource. If this hand-written implementation is too buggy I'd be happy to plug in some pthread-win32 library. -Ben
Apr 25 2004
prev sibling parent "Tu Nam" <dreamweaver mail15.com> writes:
I have used pthread to port Linux app with MinGW and has problem at
pthread_yield() and with  thread event handling . But if an interface can
abstracted the pthread win32 , it's great . The portable is the best .

"Matthew" <matthew.hat stlsoft.dot.org> wrote in message
news:c6gd04$1odv$1 digitaldaemon.com...
 In testing and debugging UNIXSTL (http://unixstl.org/) and recls
 (http://recls.org/) and some D libraries - MmFile ExeLoader - I often
prefer to
 remain in the comfort of my anachronistic Visual Studio 98, and to help me
in
 this regard I use two UNIX emulation libraries.

 The first of these, unixem
(http://synesis.com.au/software/index.html#unixem) is
 a very simple little set of mappings over Win32, for mmap(), opendir(),
glob()
 and some others, that I wrote for this purpose. It's not industry
strength, but
 for dev/test it's more than adequate (or has been so far, at least).

 The second is the wonderful GNU pthreads-win32 project
 (http://sources.redhat.com/pthreads-win32/), which is very much a serious
effort,
 and worth the time of anyone who is trying to develop cross-platform
 multi-threaded code.

 The purpose of this post is to see what people would think about our using
 pthreads-win32 to abstract all (current) platforms to a PTHREADS
interface, and
 thereby ease the effort of writing the threaded support for the language,
and for
 the libraries that explicitly address threading?

 Let me know your thoughts.

 Cheers

 Matthew
Apr 26 2004