Strange fork() behaviour under cygwin v1.3.1

Andrew de Quincey andrew@orbital.co.uk
Mon May 21 17:28:00 GMT 2001


>
> > -----Original Message-----
> > From: Andrew de Quincey [ mailto:andrew@orbital.co.uk ]
> > Sent: Tuesday, May 22, 2001 9:01 AM
> > To: cygwin@cygwin.com
> > Subject: Strange fork() behaviour under cygwin v1.3.1
> >
> >
> >
> > Hi, I've been playing with the jabber server under win32...
> > and I've run
> > into a slight problem. The following program illustrates it:
> >
> > +++++++++++++++++++++++++++++++++++++++++++++++++
> > #include <pth.h>
>
> Whats <pth.h> ? If it's the GNU portable threads library, and it's using
> a native thread library instead of 100% emulated threads, make sure its
> using pthreads, not win32 threads. (Explanation: Cygwin is ignorant of
> direct win32 thread calls you might make, but it knows about pthreads).

It is indeed the Gnu portable threads library, as used by the jabber
developers.

GNU pth describes itself as:

> Pth is a very portable POSIX/ANSI-C based library for
> Unix platforms which provides non-preemptive priority-based
> scheduling for multiple threads of execution (aka
> `multithreading') inside event-driven applications.

>From the "non-preemptive-ness" & the lack of any pthread or win32 thread
functions in it, it sounds like an entirely user-space threading library.

> [snip]

>
> ****** IMPORTANT *******
> When writing or testing threading code, ___always___ check return values
> and error flags.
>
> I realise that that isn't the problem here: your thread function does
> run, but all the same!
> ************************

That stuff was copied directly out of the jabber server source! :)))

> [snip]


--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list