summaryrefslogtreecommitdiff
path: root/pthread.h
AgeCommit message (Collapse)Author
1998-07-21Wed Jul 22 00:16:22 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au>rpj
* cleanup.c (_pthread_cleanup_push): Implement. (_pthread_cleanup_pop): Implement. (_pthread_do_cancellation): Implement. These are private to the implementation. The real cleanup functions are macros. See below. * pthread.h (pthread_cleanup_push): Implement as a macro. (pthread_cleanup_pop): Implement as a macro. Because these are macros which start and end a block, the POSIX scoping requirement is observed. See the comment in the file. * exit.c (pthread_exit): Refine the code. * create.c (pthread_create): Code cleanup. * implement.h (RND_SIZEOF): Add RND_SIZEOF(T) to round sizeof(T) up to multiple of DWORD. Add function prototypes. * private.c (_pthread_getthreadindex): "*thread" should have been "thread". Detect empty slot fail condition.
1998-07-201998-07-20 Ben Elliston <bje@cygnus.com>bje
* pthread.h (_pthread_once_flag): Remove. (_pthread_once_lock): Remove. (pthread_once): Add function prototype. (pthread_once_t): Define this type.
1998-07-191998-07-20 Ben Elliston <bje@cygnus.com>bje
* pthread.h (_pthread_once_flag): Add new variable. (_pthread_once_lock): Add new mutex lock to ensure integrity of access to _pthread_once_flag.
1998-07-19Mon Jul 20 02:31:05 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au>rpj
* private.c (_pthread_getthreadindex): Implement. * pthread.h: Add application static data dependent on _PTHREADS_BUILD_DLL define. This is needed to avoid allocating non-sharable static data within the pthread DLL. * implement.h: Add _pthread_cleanup_stack_t, _pthread_cleanup_node_t and _PTHREAD_HASH_INDEX. * exit.c (pthread_exit): Begin work on cleanup and de-allocate thread-private storage. * create.c (pthread_create): Add thread to thread table. Keep a thread-private copy of the attributes with default values filled in when necessary. Same for the cleanup stack. Make pthread_create C run-time library friendly by using _beginthreadex() instead of CreateThread(). Fix error returns. Sun Jul 19 16:26:23 1998 Ross Johnson <rpj@ixobrychus.canberra.edu.au> * implement.h: Rename pthreads_thread_count to _pthread_threads_count. Create _pthread_threads_thread_t struct to keep thread specific data. * create.c: Rename pthreads_thread_count to _pthread_threads_count. (pthread_create): Handle errors from CreateThread().
1998-07-191998-07-19 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_key_t): Define this type. (pthread_key_create): Add function prototype. (pthread_setspecific): Likewise. (pthread_getspecific): Likwise. (pthread_key_delete): Likewise.
1998-07-171998-07-18 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_cond_t): Fix for u_int. Do not assume that the mutex contained withing the pthread_cond_t structure will be a critical section. Use our new POSIX type!
1998-07-171998-07-18 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_cond_init): Add function protoype. (pthread_cond_broadcast): Likewise. (pthread_cond_signal): Likewise. (pthread_cond_timedwait): Likewise. (pthread_cond_wait): Likewise. (pthread_cond_destroy): Likewise. (pthread_cond_t): Define this type.
1998-07-171998-07-17 Ben Elliston <bje@cygnus.com>bje
* pthread.h (PTHREADS_PROCESS_PRIVATE): Remove. (PTHREAD_PROCESS_SHARED): Likewise. No support for mutexes shared across processes for now. (pthread_mutex_t): Use a Win32 CRITICAL_SECTION type for better performance.
1998-07-131998-07-14 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_attr_init): Add function prototype. (pthread_attr_destroy): Likewise. (pthread_attr_setstacksize): Likewise. (pthread_attr_getstacksize): Likewise. (pthread_attr_setstackaddr): Likewise. (pthread_attr_getstackaddr): Likewise.
1998-07-131998-07-14 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_condattr_setpshared): Fix typo.
1998-07-12See the ChangeLog.rpj
1998-07-121998-07-13 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_condattr_t): Define this type. (pthread_condattr_init): Likewise. (pthread_condattr_destroy): Likewise. (pthread_condattr_setpshared): Likewise. (pthread_condattr_getpshared): Likewise.
1998-07-121998-07-13 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_mutex_t): Define this type. (pthread_mutex_destroy): Add function prototype. (pthread_lock): Likewise. (pthread_trylock): Likewise. (pthread_unlock): Likewise.
1998-07-121998-07-12 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_mutexattr_init): Add function prototype. (pthread_mutexattr_destroy): Likewise. (pthread_mutexattr_setpshared): Likewise. (pthread_mutexattr_getpshared): Likewise. (PTHREAD_PROCESS_PRIVATE): Define. (PTHREAD_PROCESS_SHARED): Define.
1998-07-121998-07-12 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_mutexattr_t): Define this type. (pthread_mutexattr_setprotocol): Add function prototype. (pthread_mutexattr_getprotocol): Likewise. (pthread_mutexattr_setprioceiling): Likewise. (pthread_mutexattr_getprioceiling): Likewise.
1998-07-101998-07-11 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_join): Add function prototype. (pthread_equal): Likewise.
1998-07-101998-07-10 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_self): Add function prototype. (pthread_t): Define this type.
1998-07-101998-07-10 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_exit): Add function prototype.
1998-07-091998-07-09 Ben Elliston <bje@cygnus.com>bje
* pthread.h (pthread_create): Add function prototype.