Tcl Source Code

All files named "generic/tclThreadJoin.c"
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2018 Conference, Houston/TX, US, Oct 15-19
Send your abstracts to tclconference@googlegroups.com or submit via the online form
by Aug 20.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for generic/tclThreadJoin.c

2014-02-10
11:59
Eliminate all usage of WIN32 and __WIN32__ macros: Some compilers (e.g. Clang/LLVM) don't define it, and _WIN32 is much more portable anyway. See: [http://nadeausoftware.com/articles/2012/01/c_c_tip_how_use_compiler_predefined_macros_detect_operating_system#WindowsCygwinnonPOSIXandMinGW] file: [914b22b19b] check-in: [80cf092cc7] user: jan.nijtmans branch: trunk, size: 9416
2012-11-15
17:55
More complete purge of things only present for supporting long-dead Mac 9 systems. file: [73b3fa5fb3] check-in: [7506775d52] user: dgp branch: core-8-4-branch, size: 9784
2011-03-12
15:06
Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts in rest of Tcl source code. No ABI change. API change *should* be harmless. file: [73b3f1d86e] check-in: [5574bdd262] user: dkf branch: trunk, size: 9414
2011-03-02
20:27
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them (except in zlib files). file: [e7b9fb6569] check-in: [c64f310d38] user: dgp branch: trunk, size: 9442
16:06
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: [4a44a19269] check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 9442
2011-03-01
15:38
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: [7f0ff5bcca] check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 9815
2010-11-18
10:11
Next slice. file: [99f511700a] check-in: [16246c5c13] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 9515
2010-02-25
21:53
merge updates from HEAD file: [3cda8815d2] check-in: [1b11388844] user: dgp branch: dgp-refactor, size: 9519
2010-02-24
10:32
Pure whitespace changes, changing to follow Engineering Manual style. file: [64c519fdef] check-in: [c81eddebbb] user: dkf branch: trunk, size: 9515
2005-12-02
18:42
merge updates from HEAD file: [67dcea158e] check-in: [1059d34b2b] user: dgp branch: dgp-refactor, size: 9519
2005-11-07
15:12
ANSIfy file: [edec675821] check-in: [611d25e47c] user: dkf branch: trunk, size: 9515
2005-08-02
18:14
merge updates from HEAD file: [5fff97f4c5] check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 9542
2005-07-26
04:11
Merge updates from HEAD file: [2e4ef946a3] check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 9542
2005-07-19
22:45
Getting more systematic about style file: [a90e03b231] check-in: [f9332bdd5d] user: dkf branch: trunk, size: 9538
2004-03-26
22:28
Merge updates from HEAD. file: [006336535a] check-in: [6e8d2d7ba1] user: dgp branch: dgp-refactor, size: 9853
2004-03-17
18:14
Removed support for Mac OS Classic platform [Patch 918142] file: [89cc3cd331] check-in: [b6330dbac7] user: das branch: trunk, size: 9849
2002-06-10
05:33
Merging with TOT as of 06/09/2002. file: [e2a3923f75] check-in: [73b68fb238] user: wolfsuit branch: macosx-8-4-branch, size: 9898
2002-04-24
20:35
noted that this code isn't needed on unix file: [9ff9cdd1de] check-in: [69055b5c78] user: hobbs branch: trunk, size: 9890
2002-02-05
02:21
Merging with the current TOT. Very few conflicts, mostly in the generated files. file: [bd509c6f17] check-in: [f469a31a06] user: wolfsuit branch: macosx-8-4-branch, size: 9773
2002-01-04
15:43
* generic/tclThreadJoin.c (TclRememberJoinableThread,TclJoinThread): Replaced Tcl_Alloc and Tcl_Free calls with ckalloc and ckfree so that memory debugging is supported. file: [b8cd81b7ee] check-in: [7fbf4354d0] user: dgp branch: trunk, size: 9763
2000-05-06
19:51
2000-05-06 Andreas Kupries <a.kupries@westend.com> operating as proxy for David Gravereaux <davygrvy@pobox.com> * tclThreadJoin.c: Fixed several places with missing a & in arguments to calls of Tcl_Mutex(Un)lock and Tcl_ConditionNotify functions. file: [60a112278e] check-in: [d0d9090813] user: kupries branch: trunk, size: 9771
2000-05-02
22:02
Added: 2000-05-02 Andreas Kupries <a.kupries@westend.com> * Overall changes: (1) Implementation of joinable threads for all platforms. (2) Additional API's for channels. Required to allow the thread extension to move channels between threads. * generic/tcl.decls (lines 1360f): Added Tcl_JoinThread, Tcl_IsChannelShared, Tcl_IsChannelRegistered, Tcl_CutChannel, Tcl_SpliceChannel, Tcl_IsChannelExisting and Tcl_ClearChannelHandlers (slots 394 to 400). * generic/tclIO.c: Implemented Tcl_IsChannelRegistered, Tcl_IsChannelShared, Tcl_CutChannel, Tcl_SpliceChannel, Tcl_IsChannelExisting and Tcl_ClearChannelHandlers. Tcl_CutChannel uses code from CloseChannel. Replaced this code by a call to Tcl_CutChannel. Replaced several code fragments adding channels to the channel list with calls to Tcl_SpliceChannel. Removed now unused variables from CloseChannel and Tcl_UnstackChannel. Tcl_ClearChannelHandlers uses code from Tcl_Close. Replaced this code by a call to Tcl_ClearChannelHandlers. Removed now unused variables from Tcl_Close. Added the subcommands 'cut', 'forgetch', 'splice' and 'isshared' to the test code (TclTestChannelCmd). * unix/tclUnixThread.c: Implemented Tcl_JoinThread using the pthread-functionality. * win/tclWinThrd.c: Fixed several small typos in comments. Implemented Tcl_JoinThread using a platform independent emulation layer (see generic/tclThreadJoin.c below). Added 'joinLock' to serialize Tcl_CreateThread and TclpExitThread to prevent a race for joinable threads. * mac/tclMacThrd.c: Implemented Tcl_JoinThread using a platform independent emulation layer (see generic/tclThreadJoin.c below). Due to the cooperative nature of threading on this platform the race mentioned above is not present. * generic/tclThreadJoin.c: New file. Contains a platform independent emulation layer helping in the implementation of joinable threads for the win and mac platforms. * generic/tclInt.h: Added declarations for TclJoinThread, TclRememberJoinableThread and TclSignalExitThread. These procedures define the API of the emulation layer for joinable threads (see generic/tclThreadJoin.c above). * win/Makefile.in: * win/makefile.vc: Added generic/tclTheadJoin.o to the rules. * mac/: I don't know to which file generic/tclTheadJoin.o has to be added to so that it compiles. Sorry. * unix/tclUnixChan.c: #ifdef'd the thread-local list of file channels as it prevents us from transfering channels. To restore this we may need an extended interface to drivers in the future. Target: 9.0. Found while testing the new transfer of channels. The information in this list for a channel was left behind and then crashed the system during finalization. * generic/tclThreadTest.c: Added -joinable flag to 'testthread create'. Added subcommand 'testthread join'. * doc/CrtChannel.3: Added documentation for Tcl_IsChannelRegistered, Tcl_IsChannelShared, Tcl_CutChannel, Tcl_SpliceChannel, Tcl_IsChannelExisting and Tcl_ClearChannelHandlers. * doc/Thread.3: Added documentation for Tcl_JoinThread. * tests/thread.test: Added tests for joining of threads. file: [2f71f8d83c] check-in: [cdf262856d] user: kupries branch: trunk, size: 9750