⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 this is simple sip stack.
💻
📖 第 1 页 / 共 5 页
字号:
	* private.c (_pthread_cond_test_init_lock): Initialise and destroy.

	* implement.h (_pthread_cond_test_init_lock): Add extern.

	* global.c (_pthread_cond_test_init_lock): Add declaration. 

	* condvar.c (pthread_cond_destroy): check for valid initialised CV;
	flag destroyed CVs as invalid.
	(pthread_cond_init): pthread_cond_t is no longer just a pointer.
	This is because PTHREAD_COND_INITIALIZER needs state info to reside
	in pthread_cond_t so that it can initialise on first use. Will work on
	making pthread_cond_t (and other objects like it) opaque again, if
	possible, later.
	(cond_timedwait): add check for statically initialisation of
	CV; initialise on first use.
	(pthread_cond_signal): check for valid CV.
	(pthread_cond_broadcast): check for valid CV.
	(_cond_check_need_init): Add.

	* pthread.h (PTHREAD_COND_INITIALIZER): Fix.
	(pthread_cond_t): no longer a pointer to pthread_cond_t_.
	(pthread_cond_t_): add 'staticinit' and 'valid' elements.

Sat Mar 6 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* implement.h: Undate comments.

Sun Feb 21 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.h (PTHREAD_MUTEX_INITIALIZER): missing braces around
	cs element initialiser.

1999-02-21  Ben Elliston  <bje@cygnus.com>

	* pthread.h (pthread_exit): The return type of this function is
	void, not int.

	* exit.c (pthread_exit): Do not return 0.

Sat Feb 20 16:03:30 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* dll.c (DLLMain): Expand TryEnterCriticalSection support test.

	* mutex.c (pthread_mutex_trylock): The check for
	_pthread_try_enter_critical_section == NULL should have been
	removed long ago.

Fri Feb 19 16:03:30 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* sync.c (pthread_join): Fix pthread_equal() test.

	* mutex.c (pthread_mutex_trylock): Check mutex != NULL before
	using it.

Thu Feb 18 16:17:30 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* misc.c (pthread_equal): Fix inverted result.

	* Makefile.in: Use libpthread32.a as the name of the DLL export
	library instead of pthread.lib.

	* condvar.c (pthread_cond_init): cv could have been used unitialised;
	initialise.

	* create.c (pthread_create): parms could have been used unitialised;
	initialise.

	* pthread.h (struct pthread_once_t_): Remove redefinition.

Sat Feb 13 03:03:30 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.h (struct pthread_once_t_): Replaced.

	* misc.c (pthread_once): Replace with John Bossom's version;
	has lighter weight serialisation; fixes problem of not holding
	competing threads until after the init_routine completes.

Thu Feb 11 13:34:14 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* misc.c (CancelableWait): Change C++ exception throw.

	* sync.c (pthread_join): Change FIXME comment - issue resolved.

Wed Feb 10 12:49:11 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* configure: Various temporary changes.
	- Kevin Ruland <Kevin.Ruland@anheuser-busch.com>

	* README: Update.

	* pthread.def (pthread_attr_getstackaddr): uncomment
	(pthread_attr_setstackaddr): uncomment

Fri Feb  5 13:42:30 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* semaphore.c: Comment format changes.

Thu Feb  4 10:07:28 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* global.c: Remove Pthread_exception instantiation.

	* cancel.c (pthread_testcancel): Change C++ exception throw.

	* implement.h: Remove extern declaration.

Wed Feb  3 13:04:44 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* cleanup.c: Rename _pthread_*_cleanup() to pthread_*_cleanup().

	* pthread.def: Ditto.
	
	* pthread.h: Ditto.

	* pthread.def (pthread_cleanup_push): Remove from export list;
	the function is defined as a macro under all compilers.
	(pthread_cleanup_pop): Ditto.

	* pthread.h: Remove #if defined().

Wed Feb  3 10:13:48 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* sync.c (pthread_join): Check for NULL value_ptr arg;
	check for detached threads.

Tue Feb  2 18:07:43 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* implement.h: Add #include <pthread.h>.
	Change sem_t to _pthread_sem_t.

	Various patches by Kevin Ruland <Kevin.Ruland@anheuser-busch.com>

	* signal.c (pthread_sigmask): Add and modify casts.
	Reverse LHS/RHS bitwise assignments.

	* pthread.h: Remove #include <semaphore.h>.
	(_PTHREAD_ATTR_VALID): Add cast.
	(struct pthread_t_): Add sigmask element.

	* dll.c: Add "extern C" for DLLMain.
	(DllMain): Add cast.

	* create.c (pthread_create): Set sigmask in thread.

	* condvar.c: Remove #include. Change sem_* to _pthread_sem_*.

	* attr.c: Changed #include.

	* Makefile.in: Additional targets and changes to build the library
	as a DLL.

Fri Jan 29 11:56:28 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* Makefile.in (OBJS): Add semaphore.o to list.

	* semaphore.c (_pthread_sem_timedwait): Move from private.c.
	Rename sem_* to _pthread_sem_*.

	* pthread.h (pthread_cond_t): Change type of sem_t.
	_POSIX_SEMAPHORES no longer defined.

	* semaphore.h: Contents moved to implement.h.
	Removed from source tree.

	* implement.h: Add semaphore function prototypes and ename all
	functions to prepend '_pthread_'. They are
	now private to the pthreads-win32 implementation.

	* private.c: Change #warning.
	Move _pthread_sem_timedwait() to semaphore.c.

	* cleanup.c: Change #warning.

	* misc.c: Remove #include <errno.h>

	* pthread.def: Cleanup CVS merge conflicts.

	* global.c: Ditto.

	* ChangeLog: Ditto.

	* cleanup.c: Ditto.

Sun Jan 24 01:34:52 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* semaphore.c (sem_wait): Remove second arg to 
	pthreadCancelableWait() call.

Sat Jan 23 17:36:40 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.def: Add new functions to export list.

	* pthread.h (PTHREAD_MUTEX_AUTO_CS_NP): New.
	(PTHREAD_MUTEX_FORCE_CS_NP): New.

	* README: Updated.

Fri Jan 22 14:31:59 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* Makefile.in (CFLAGS): Remove -fhandle-exceptions. Not needed
	with egcs. Add -g for debugging.

	* create.c (pthread_create): Replace __stdcall with PT_STDCALL
	macro. This is a hack and must be fixed.

	* misc.c (CancelableWait): Remove redundant statement.

	* mutex.c (pthread_mutexattr_init): Cast calloc return value.

	* misc.c (CancelableWait): Add cast.
	(pthread_self): Add cast.

	* exit.c (pthread_exit): Add cast.

	* condvar.c (pthread_condattr_init): Cast calloc return value.

	* cleanup.c: Reorganise conditional compilation.

	* attr.c (pthread_attr_init): Remove unused 'result'.
	Cast malloc return value.

	* private.c (_pthread_callUserDestroyRoutines): Redo conditional
	compilation.

	* misc.c (CancelableWait): C++ version uses 'throw'.

	* cancel.c (pthread_testcancel): Ditto.

	* implement.h (class pthread_exception): Define for C++.

	* pthread.h: Fix C, C++, and Win32 SEH condition compilation
	mayhem around pthread_cleanup_* defines. C++ version now uses John
	Bossom's cleanup handlers.
	(pthread_attr_t): Make 'valid' unsigned.
	Define '_timeb' as 'timeb' for Ming32.
	Define PT_STDCALL as nothing for Mingw32. May be temporary.

	* cancel.c (pthread_testcancel): Cast return value.

Wed Jan 20 09:31:28 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.h (pthread_mutexattr_t): Changed to a pointer.

	* mutex.c (pthread_mutex_init): Conditionally create Win32 mutex
	- from John Bossom's implementation.
	(pthread_mutex_destroy): Conditionally close Win32 mutex
	- from John Bossom's implementation.
	(pthread_mutexattr_init): Replaced by John Bossom's version.
	(pthread_mutexattr_destroy): Ditto.
	(pthread_mutexattr_getpshared): New function from John Bossom's
	implementation.
	(pthread_mutexattr_setpshared): New function from John Bossom's
	implementation.

Tue Jan 19 18:27:42 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* pthread.h (pthreadCancelableTimedWait): New prototype.
	(pthreadCancelableWait): Remove second argument.

	* misc.c (CancelableWait): New static function is 
	pthreadCancelableWait() renamed.
	(pthreadCancelableWait): Now just calls CancelableWait() with
	INFINITE timeout.
	(pthreadCancelableTimedWait): Just calls CancelableWait()
	with passed in timeout.

	* private.c (_pthread_sem_timedwait): 'abstime' arg really is
	absolute time. Calculate relative time to wait from current
	time before passing timeout to new routine 
	pthreadCancelableTimedWait().
	- Scott Lightner <scott@curriculum.com>

Tue Jan 19 10:27:39 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.h (pthread_mutexattr_setforcecs_np): New prototype.
	
	* mutex.c (pthread_mutexattr_init): Init 'pshared' and 'forcecs'
	attributes to 0.
	(pthread_mutexattr_setforcecs_np): New function (not portable).

	* pthread.h (pthread_mutex_t): 
	Add 'mutex' element. Set to NULL in PTHREAD_MUTEX_INITIALIZER.
	The pthread_mutex_*() routines will try to optimise performance
	by choosing either mutexes or critical sections as the basis
	for pthread mutexes for each indevidual mutex.
	(pthread_mutexattr_t_): Add 'forcecs' element.
	Some applications may choose to force use of critical sections
	if they know that:-
	     the mutex is PROCESS_PRIVATE and, 
	         either the OS supports TryEnterCriticalSection() or
	         pthread_mutex_trylock() will never be called on the mutex.
	This attribute will be setable via a non-portable routine.

	Note: We don't yet support PROCESS_SHARED mutexes, so the
	implementation as it stands will default to Win32 mutexes only if
	the OS doesn't support TryEnterCriticalSection. On Win9x, and early
	versions of NT 'forcecs' will need to be set in order to get
	critical section based mutexes.

Sun Jan 17 12:01:26 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.h (PTHREAD_MUTEX_INITIALIZER): Init new 'staticinit'
	value to '1' and existing 'valid' value to '1'.

	* global.c (_pthread_mutex_test_init_lock): Add.

	* implement.h (_pthread_mutex_test_init_lock.): Add extern.

	* private.c (_pthread_processInitialize): Init critical section for
	global lock used by _mutex_check_need_init().
	(_pthread_processTerminate): Ditto (:s/Init/Destroy/).

	* dll.c (dllMain): Move call to FreeLibrary() so that it is only
	called once when the process detaches.

	* mutex.c (_mutex_check_need_init): New static function to test
	and init PTHREAD_MUTEX_INITIALIZER mutexes. Provides serialised
	access to the internal state of the uninitialised static mutex. 
	Called from pthread_mutex_trylock() and pthread_mutex_lock() which
	do a quick unguarded test to check if _mutex_check_need_init()
	needs to be called. This is safe as the test is conservative
 	and is repeated inside the guarded section of 
	_mutex_check_need_init(). Thus in all calls except the first
	calls to lock static mutexes, the additional overhead to lock any
	mutex is a single memory fetch and test for zero.

	* pthread.h (pthread_mutex_t_): Add 'staticinit' member. Mutexes
	initialised by PTHREAD_MUTEX_INITIALIZER aren't really initialised
	until the first attempt to lock it. Using the 'valid'
	flag (which flags the mutex as destroyed or not) to record this
	information would be messy. It is possible for a statically
	initialised mutex such as this to be destroyed before ever being
	used.

	* mutex.c (pthread_mutex_trylock): Call _mutex_check_need_init()
	to test/init PTHREAD_MUTEX_INITIALIZER mutexes.
	(pthread_mutex_lock): Ditto.
	(pthread_mutex_unlock): Add check to ensure we don't try to unlock
	an unitialised static mutex.
	(pthread_mutex_destroy): Add check to ensure we don't try to delete
	a critical section that we never created. Allows us to destroy
	a static mutex that has never been locked (and hence initialised).
	(pthread_mutex_init): Set 'staticinit' flag to 0 for the new mutex.

Sun Jan 17 12:01:26 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* private.c (_pthread_sem_timedwait): Move from semaphore.c.

	* semaphore.c : Remove redundant #includes.
	(_pthread_sem_timedwait): Move to private.c.
	(sem_wait): Add missing abstime arg to pthreadCancelableWait() call.

Fri Jan 15 23:38:05 1999  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* condvar.c (cond_timedwait): Remove comment.

Fri Jan 15 15:41:28 1999  Ross Johnson  <rpj@swan.canberra.edu.au>

	* pthread.h: Add new 'abstime' arg to pthreadCancelableWait()
	prototype.

	* condvar.c (cond_timedwait): New generalised function called by
	both pthread_cond_wait() and pthread_cond_timedwait(). This is
	essentially pthread_cond_wait() renamed and modified to add the
	'abstime' arg and call the new _pthread_sem_timedwait() instead of
	sem_wait().

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -