This is the mail archive of the
mailing list for the pthreas-win32 project.
New snapshot 2004-05-16 available
- From: Ross Johnson <rpj at callisto dot canberra dot edu dot au>
- To: pthreads-win32 at sources dot redhat dot com
- Date: Mon, 17 May 2004 16:06:26 +1000
- Subject: New snapshot 2004-05-16 available
- Reply-to: rpj at callisto dot canberra dot edu dot au
Finally there is a new snapshot available that incorporates 99 percent
of the issues raised over the past 8 to 9 months, including some that
had not made it into CVS until today.
Here are the main changes:
Attempt to add Watcom to the list of compilers that can build the library.
This failed in the end due to it's non-thread-aware errno. The library
builds but the test suite fails. See README.Watcom for more details.
Note: This is probably a result of not defining the appropriate macro.
* Bug and memory leak in sem_init()
- Alex Blanco <Alex.Blanco at motorola.com>
* ptw32_getprocessors() now returns CPU count of 1 for WinCE.
- James Ewing <james.ewing at sveasoft.com>
* pthread_cond_wait() could be canceled at a point where it should not
be cancelable. Fixed.
- Alexander Terekhov <TEREKHOV at de.ibm.com>
* sem_timedwait() had an incorrect timeout calculation.
- Philippe Di Cristo <philipped at voicebox.com>
* Fix a memory leak left behind after threads are destroyed.
- P. van Bruggen <pietvb at newbridges.nl>
* Ported to AMD64.
- Makoto Kato <raven at oldskool.jp>
* True pre-emptive asynchronous cancelation of threads. This is optional
and requires that Panagiotis E. Hadjidoukas's QueueUserAPCEx package be
installed. This package is included in the pthreads-win32 self-unpacking
Zip archive starting from this snapshot. See the README.txt file inside
the package for installation details. Many thanks to Panagiotis for his
assistance in getting the hooks into the library.
Note: If you don't use async cancelation in your application, or don't need
to cancel threads that are blocked on system resources such as network I/O,
then the default non-preemptive async cancelation is probably good enough.
However, pthreads-win32 auto-detects the availability of these components
at run-time, so you don't need to rebuild the library from source if you
change your mind later.
All of the advice available in books and elsewhere on the undesirability
of using async cancelation in any application still stands, but this
feature is a welcome addition with respect to the library's conformance to
the POSIX standard.