* include/pthread.h (PTHREAD_CANCELED): Defined a reasonable
value.
* pthread.cc (pthread_exit): Call method instead of function.
(pthread_setcancelstate): Ditto.
(pthread_setcanceltype): Ditto.
(pthread_testcancel): Ditto.
* thread.h (pthread::cancel_event): New member.
(__pthread_cancel_self): New prototype.
(pthread::exit): New Method.
(pthread::cancel): Ditto.
(pthread::testcancel): Ditto.
(pthread::cancel_self): Ditto.
(pthread::static_cancel_self): Ditto.
(pthread::setcancelstate): Ditto.
(pthread::setcanceltype): Ditto.
(__pthread_cancel): Give c++ linkage.
(__pthread_exit): Remove.
(__pthread_setcancelstate): Ditto.
(__pthread_setcanceltype): Ditto.
(__pthread_testcancel): Ditto.
* thread.cc (pthread::pthread): Inititialize cancel_event.
(pthread::~pthread): Close cancel_event if needed.
(pthread::create): Create cancel_event.
(pthread::exit): New method. Replacement for __pthread_exit.
(pthread::cancel): New method.
(pthread::testcancel): Ditto.
(pthread::static_cancel_self); New static method.
(pthread::setcancelstate): New method. Replacement for
__pthread_setcancelstate.
(pthread::setcanceltype): New method. Replacement for
__pthread_setcanceltype.
(pthread::pop_cleanup_handler): Added lock for async cancel safe
cancellation.
(pthread::thread_init_wrapper): Change __pthread_exit to
thread->exit().
(__pthread_cancel): Call method thread->cancel().
(__pthread_exit): Remove.
(__pthread_setcancelstate): Ditto.
(__pthread_setcanceltype): Ditto.
(__pthread_testcancel): Ditto.
|
||
|---|---|---|
| .. | ||
| arpa | ||
| asm | ||
| cygwin | ||
| net | ||
| netinet | ||
| sys | ||
| a.out.h | ||
| dlfcn.h | ||
| exceptions.h | ||
| fcntl.h | ||
| features.h | ||
| fnmatch.h | ||
| getopt.h | ||
| glob.h | ||
| icmp.h | ||
| io.h | ||
| lastlog.h | ||
| limits.h | ||
| mapi.h | ||
| memory.h | ||
| mntent.h | ||
| netdb.h | ||
| paths.h | ||
| poll.h | ||
| pthread.h | ||
| sched.h | ||
| semaphore.h | ||
| strings.h | ||
| sysexits.h | ||
| syslog.h | ||
| termio.h | ||
| tzfile.h | ||
| wchar.h | ||