pthread_cancel and EH: let's try this again

Alexander Terekhov terekhov at web.de
Thu Jul 21 15:49:42 UTC 2005


Peter Dimov wrote:
[...]
> D. to match POSIX semantics, cancellation points don't throw if there is an
> unfinished exception.

It actually breaks straight POSIX semantics.

  int main() {
    pthread_cancel(pthread_self());
    try { throw 0; } catch(...) { pthread_testcancel(); }
    printf("Never reach this point under straight POSIX.");
  }

This probably won't please Tru64 and OpenVMS folk.

regards,
alexander.




More information about the c++-pthreads mailing list