Re: [PATCH 5/4] run-command: implement abort_async for pthreads
From: Erik Faye-Lund <hidden>
Date: 2016-06-15 22:50:57
On Fri, Apr 1, 2011 at 10:17 PM, Jeff King [off-list ref] wrote:
On Fri, Apr 01, 2011 at 10:13:23PM +0200, Erik Faye-Lund wrote:quoted
On Fri, Apr 1, 2011 at 10:05 PM, Jeff King [off-list ref] wrote:quoted
On Fri, Apr 01, 2011 at 09:57:14PM +0200, Erik Faye-Lund wrote:quoted
quoted
But this does not help the case at hand in any way. How would you interrupt a thread that is blocked in ReadFile()? The point of pthread_cancel() is that it interrupts blocked system callsThere is no mention of such a guarantee in POSIX (section 2.9.5 Thread Cancellation), so relying on that is undefined behavior.Eh? My pthreads(7) says that read() is required to be a cancellation point acrroding to POSIX. I didn't dig up the actual reference in the standard, though.I don't understand where the implementor would get that from after reading through it, but if there's something I've missed we can fix it by replacing my pthread_cancel with this, no?Out of curiosity, which POSIX are you reading? My page references POSIX.1-2001, but technically pthreads were originally defined in POSIX.1c-1995.
Sorry that I wasn't more clear about this: "The Open Group Base Specifications Issue 6" "IEEE Std 1003.1, 2004 Edition" Available here: http://pubs.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_09.html