summaryrefslogtreecommitdiff
path: root/sync.c
AgeCommit message (Collapse)Author
1998-07-24Fri Jul 24 16:33:17 1998 Ross Johnson <rpj@swan.canberra.edu.au>rpj
* sync.c (pthread_detach): Use equality test, not assignment. * create.c (_pthread_start_call): Add call to Win32 CloseHandle() if thread is detached.
1998-07-241998-07-24 Ben Elliston <bje@cygnus.com>bje
* sync.c (pthread_detach): Close the Win32 thread handle to emulate detached (or daemon) threads.
1998-07-24 * sync.c (pthread_join): Save valueptr arg in joinvalueptr forrpj
pthread_exit() to use. * private.c (_pthread_new_thread_entry): Initialise joinvalueptr to NULL. * create.c (_pthread_start_call): Rewrite to facilitate joins. pthread_exit() will do a longjmp() back to here. Does appropriate cleanup and exit/return from the thread. (pthread_create): _beginthreadex() now passes a pointer to our thread table entry instead of just the call member of that entry. * implement.h (_pthread_threads_thread): New member void ** joinvalueptr. (_pthread_call_t): New member jmpbuf env. * exit.c (pthread_exit): Major rewrite to handle joins and handing value pointer to joining thread. Uses longjmp() back to _pthread_start_call().
1998-07-23Fri Jul 24 03:00:25 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au>rpj
* attr.c (pthread_attr_destroy): Fix merge conflicts. (pthread_attr_getdetachstate): Fix merge conflicts. (pthread_attr_setdetachstate): Fix merge conflicts. * pthread.h: Fix merge conflicts. * sync.c (pthread_join): Fix merge conflicts.
1998-07-231998-07-24 Ben Elliston <bje@cygnus.com>bje
* sync.c (pthread_join): Return if the target thread is detached.
1998-07-101998-07-11 Ben Elliston <bje@cygnus.com>bje
* sync.c (pthread_join): Implement.