From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12436 invoked by alias); 17 Dec 2002 07:00:35 -0000 Mailing-List: contact pthreads-win32-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: pthreads-win32-owner@sources.redhat.com Received: (qmail 12423 invoked from network); 17 Dec 2002 07:00:33 -0000 Received: from unknown (HELO fwall1.daronmont.com.au) (150.101.16.97) by 209.249.29.67 with SMTP; 17 Dec 2002 07:00:33 -0000 Received: from no.name.available by fwall1.daronmont.com.au via smtpd (for [209.249.29.67]) with SMTP; 17 Dec 2002 07:00:32 UT Received: by pd001649.daronmont.com.au with Internet Mail Service (5.5.2653.19) id ; Tue, 17 Dec 2002 17:30:20 +1030 Message-ID: <8179ED123ECCD611A5490000F822E6EA061B28@pd001649.daronmont.com.au> From: Simon Gerblich To: pthreads-win32@sources.redhat.com Subject: Cancellation points Date: Mon, 16 Dec 2002 23:00:00 -0000 MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2002/txt/msg00122.txt.bz2 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