summaryrefslogtreecommitdiff
path: root/pthread.h
AgeCommit message (Collapse)Author
2011-03-26rename functionrpj
2011-03-26New interface (not part of robust mutexes)rpj
2011-03-24First pass of robust mutexesrpj
2011-03-06More 64 bit cast fixupsrpj
2011-03-0664 bit compatibility (mingw64)rpj
2011-03-03Some cleanups, mostly x86_64 compat plus interlocked macrosrpj
2011-02-27Removed non-thread POSIX compatibility macrosrpj
2010-06-20See ChangeLogs: preparing for new release.rpj
2009-03-03''rpj
2007-11-22''rpj
2007-05-26Added pthread_getw32threadid_np function untestedrpj
2007-01-06See ChangeLogrpj
2006-01-24''rpj
2005-06-03''rpj
2005-05-27''rpj
2005-05-27''rpj
2005-05-26''rpj
2005-05-15''rpj
2005-05-06''rpj
2005-04-25''rpj
2005-04-25''rpj
2005-04-12''v-2-3-0-releaserpj
2005-04-01''rpj
2005-03-16''v-2-1-0-releaserpj
2005-03-12New design for pthread_once (with cancelability); ABI changerpj
2005-03-08compiler compatibility and bug fixesrpj
2005-01-25''snap-2005-01-25rpj
2005-01-01Copyright year updatedrpj
2005-01-01''snap-2005-01-03rpj
2004-11-22Copyright updaterpj
2004-11-11Change email contact addressrpj
2004-11-03Mutex, semaphore, thread ID, test suite changes - see ChangeLogsrpj
2004-09-13Clarify behaviour and remove some redundant code - see ChangeLogsrpj
2004-06-29Add initial Digital Mars compiler supportrpj
2004-06-25''rpj
2004-06-22Add PTHREAD_{RECURSIVE,ERRORCHECK}_MUTEX_INITIALIZER{,_NP}snap-2004-06-22rpj
2004-05-17re-indentation, bug fixes, hooks for pre-emptive async cancelationrpj
2004-05-06''rpj
2003-10-15Add Watcom compiler compatibility.rpj
2003-09-02Added cancelation of/from non-POSIX threads; minor fixes; minor changes.snap-2003-09-03rpj
2003-08-19Updated Copyright notice (date and contact address).rpj
2003-08-14Reuse of thread IDs, improved thread ID validation, new tests, bug fixes.rpj
2002-06-04*** empty log message ***rpj
2002-06-03An attempt to get sem_getvalue working properly.rpj
2002-03-02 * errno.c: Compiler directive was incorrectly including code.rpj
* pthread.h: Conditionally added some #defines from config.h needed when not building the library. e.g. NEED_ERRNO, NEED_SEM. (PTW32_DLLPORT): Now only defined if _DLL defined. (_errno): Compiler directive was incorrectly including prototype. * sched.h: Conditionally added some #defines from config.h needed when not building the library. * semaphore.h: Replace an instance of NEED_SEM that should have been NEED_ERRNO. This change currently has nil effect. * GNUmakefile: Correct some recent changes. * Makefile: Add rule to generate pre-processor output.
2002-02-27 * exception3.c (terminateFunction): For MSVC++, callrpj
exit() rather than pthread_exit(). Add comments to explain why. * rwlock2_t.c: New test. * rwlock3_t.c: New test. * rwlock4_t.c: New test. * rwlock5_t.c: New test. * rwlock6_t.c: New test. * rwlock6_t2.c: New test. * rwlock6.c (main): Swap thread and result variables to correspond to actual thread functions. * rwlock1.c: Change test description comment to correspond to the actual test.
2002-02-23 * pthread_cond_destroy.c: Expand the time changerpj
critical section to solve deadlock problem. * pthread.c: Add all remaining C modules. * pthread.h: Use dllexport/dllimport attributes on functions to avoid using pthread.def. * sched.h: Likewise. * semaphore.h: Likewise. * GNUmakefile: Add new targets for single translation unit build to maximise inlining potential; generate pthread.def automatically. * Makefile: Likewise, but no longer uses pthread.def.
2002-02-18Major reorganisation of source code; new routine and tests added.rpj
2002-02-08Copyright notice updates; module splitting; POSIX versionrpj
conditional compilation; refinements; bug fixes. See the ChangeLog.
2002-02-02 * cancel.c: Rearranged some code and introduced checksrpj
to disable cancelation at the start of a thread's cancelation run to prevent double cancelation. The main problem arises if a thread is canceling and then receives a subsequent async cancel request. * private.c: Likewise. * condvar.c: Place pragmas around cleanup_push/pop to turn off inline optimisation (/Obn where n>0 - MSVC only). Various optimisation switches in MSVC turn this on, which interferes with the way that cleanup handlers are run in C++ EH and SEH code. Application code compiled with inline optimisation must also wrap cleanup_push/pop blocks with the pragmas, e.g. #pragma inline_depth(0) pthread_cleanup_push(...) ... pthread_cleanup_pop(...) #pragma inline_depth(8) * rwlock.c: Likewise. * mutex.c: Remove attempts to inline some functions. * signal.c: Modify misleading comment. tests/ * mutex8: New test. * mutex8n: New test. * mutex8e: New test. * mutex8r: New test. * cancel6a: New test. * cancel6d: New test. * cleanup0.c: Add pragmas for inline optimisation control. * cleanup1.c: Add pragmas for inline optimisation control. * cleanup2.c: Add pragmas for inline optimisation control. * cleanup3.c: Add pragmas for inline optimisation control. * condvar7.c: Add pragmas for inline optimisation control. * condvar8.c: Add pragmas for inline optimisation control. * condvar9.c: Add pragmas for inline optimisation control.