public inbox for pthreads-win32@sourceware.org
 help / color / mirror / Atom feed
From: Ross Johnson <rpj@ise.canberra.edu.au>
To: Simon Gerblich <sgerblich@daronmont.com.au>
Cc: pthreads-win32@sources.redhat.com
Subject: Re: Cancellation points
Date: Mon, 16 Dec 2002 23:24:00 -0000	[thread overview]
Message-ID: <3DFED0FD.3030209@ise.canberra.edu.au> (raw)
In-Reply-To: <8179ED123ECCD611A5490000F822E6EA061B27@pd001649.daronmont.com.au>

Hi Simon,

Sleep() [with uppercase 'S'] is definitely not a cancelation point - 
only functions included with pthreads-win32 can be cancelation 
points. The POSIX function sleep() isn't provided by pthreads-win32 
either.

See the Conformance section of the ANNOUNCE file for all functions 
that have been implemented. Any of those that should be cancelation 
points are.

Re pthread_mutex_lock(), Thomas Pfaff discovered this bug only a few 
days ago and tracked it down (to an error of mine). I will fix it 
and drop it into CVS ASAP.

Thanks.
Ross

Simon Gerblich wrote:
> Hi,
> 
> I'm having some problems working out which functions are cancellation points
> when using
> pthread_cancel() with pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, NULL).
> I'm using pthreadsVC.dll on Windows 2000.
> 
> Is Sleep() meant to be a cancellation point in WIN32?  I've read in the
> Solaris reference
> manual that sleep() and usleep() are cancellation points for pthreads on
> Solaris, but can
> not find a list of cancellation points for pthreads on WIN32.
> 
> Also pthread_mutex_lock() is acting as a cancellation point in my code.  I
> have to put
> pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL) before my
> calls to pthread_mutex_lock to stop it acting as a cancellation point.  If
> the thread
> cancellation occurs in a call to pthread_mutex_lock(), the mutex that was
> being locked
> returns EBUSY when destroyed with pthread_mutex_destroy().  Has anyone else
> seen this happen?  
> 
> Thanks for any help,
> Simon Gerblich


  reply	other threads:[~2002-12-17  7:24 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-16 22:56 Simon Gerblich
2002-12-16 23:24 ` Ross Johnson [this message]
2002-12-17  0:15   ` Ross Johnson
2002-12-17  1:09     ` Norman Vine
2002-12-16 23:00 Simon Gerblich
2002-12-18 16:29 Simon Gerblich
2002-12-19  5:00 Alexander Terekhov
2002-12-19 15:29 Simon Gerblich
2002-12-19 16:53 ` Alexander Terekhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3DFED0FD.3030209@ise.canberra.edu.au \
    --to=rpj@ise.canberra.edu.au \
    --cc=pthreads-win32@sources.redhat.com \
    --cc=sgerblich@daronmont.com.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).