summaryrefslogtreecommitdiffstats
path: root/generic/tclDecls.h
diff options
context:
space:
mode:
authorkupries <kupries>2000-04-04 20:28:40 (GMT)
committerkupries <kupries>2000-04-04 20:28:40 (GMT)
commit654b797828a64252043684a8896212e371fbb59d (patch)
tree2d5993ba2241ee288fdaac5cde72d36fba00b349 /generic/tclDecls.h
parent10736d4e37e044b5393fb9069608f7188ef0d9b3 (diff)
downloadtcl-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.h17
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) */