diff options
author | kupries <kupries> | 2000-04-04 20:28:40 (GMT) |
---|---|---|
committer | kupries <kupries> | 2000-04-04 20:28:40 (GMT) |
commit | 654b797828a64252043684a8896212e371fbb59d (patch) | |
tree | 2d5993ba2241ee288fdaac5cde72d36fba00b349 /generic/tclDecls.h | |
parent | 10736d4e37e044b5393fb9069608f7188ef0d9b3 (diff) | |
download | tcl-654b797828a64252043684a8896212e371fbb59d.zip tcl-654b797828a64252043684a8896212e371fbb59d.tar.gz tcl-654b797828a64252043684a8896212e371fbb59d.tar.bz2 |
2000-04-03 Andreas Kupries <a.kupries@westend.com>
* Overall change: Definition of public API's for the finalization
of conditions and mutexes. [Bug: 4199].
* generic/tclInt.h: Removed definitions of TclFinalizeMutex and
TclFinalizeCondition.
* generic/tcl.decls: Added declarations of Tcl_MutexFinalize and
Tcl_ConditionFinalize.
* generic/tclThread.c: Renamed TclFinalizeMutex to
Tcl_MutexFinalize. Renamed TclFinalizeCondition to
Tcl_ConditionFinalize.
* generic/tclNotify.c: Changed usage of TclFinalizeMutex to
Tcl_MutexFinalize.
* unix/tclUnixNotfy.c:
* generic/tclThreadTest.c: Changed usages of TclFinalizeCondition to
Tcl_ConditionFinalize.
* generic/tcl.h: Added empty macros for Tcl_MutexFinalize and
Tcl_ConditionFinalize, to be used when the core is compiled
without threads.
* doc/Thread.3: Added description the new API's.
Diffstat (limited to 'generic/tclDecls.h')
-rw-r--r-- | generic/tclDecls.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/generic/tclDecls.h b/generic/tclDecls.h index 05902e7..a670f78 100644 --- a/generic/tclDecls.h +++ b/generic/tclDecls.h @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclDecls.h,v 1.31 2000/02/08 10:05:41 hobbs Exp $ + * RCS: @(#) $Id: tclDecls.h,v 1.32 2000/04/04 20:28:41 kupries Exp $ */ #ifndef _TCLDECLS @@ -1218,6 +1218,11 @@ EXTERN int Tcl_GetChannelNamesEx _ANSI_ARGS_(( EXTERN int Tcl_ProcObjCmd _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); +/* 391 */ +EXTERN void Tcl_FinalizeCondition _ANSI_ARGS_(( + Tcl_Condition * condPtr)); +/* 392 */ +EXTERN void Tcl_FinalizeMutex _ANSI_ARGS_((Tcl_Mutex * mutex)); typedef struct TclStubHooks { struct TclPlatStubs *tclPlatStubs; @@ -1676,6 +1681,8 @@ typedef struct TclStubs { int (*tcl_GetChannelNames) _ANSI_ARGS_((Tcl_Interp * interp)); /* 388 */ int (*tcl_GetChannelNamesEx) _ANSI_ARGS_((Tcl_Interp * interp, char * pattern)); /* 389 */ int (*tcl_ProcObjCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 390 */ + void (*tcl_FinalizeCondition) _ANSI_ARGS_((Tcl_Condition * condPtr)); /* 391 */ + void (*tcl_FinalizeMutex) _ANSI_ARGS_((Tcl_Mutex * mutex)); /* 392 */ } TclStubs; #ifdef __cplusplus @@ -3285,6 +3292,14 @@ extern TclStubs *tclStubsPtr; #define Tcl_ProcObjCmd \ (tclStubsPtr->tcl_ProcObjCmd) /* 390 */ #endif +#ifndef Tcl_FinalizeCondition +#define Tcl_FinalizeCondition \ + (tclStubsPtr->tcl_FinalizeCondition) /* 391 */ +#endif +#ifndef Tcl_FinalizeMutex +#define Tcl_FinalizeMutex \ + (tclStubsPtr->tcl_FinalizeMutex) /* 392 */ +#endif #endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ |