summaryrefslogtreecommitdiffstats
path: root/win/tclWinThrd.c
Commit message (Collapse)AuthorAgeFilesLines
* Some more *A() -> *W() Win32 API changes, making Unicode calls Explicit.jan.nijtmans2019-09-191-1/+1
|
* Simplify ToUtf(), expecially for TCL_UTF_MAX>3 (with correct surrogate ↵jan.nijtmans2018-06-251-4/+4
| | | | | handling). Fix various typo's
* Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread existsjan.nijtmans2016-10-111-2/+4
|\
* \ Fix [7393be0be6e7f91cbb2016fa777896e3895929e3|7393be0be6]: Tcl Thread ↵jan.nijtmans2016-06-141-7/+4
|\ \ | |/ | | | | library doesn't work in Debug build on Windows_x64
| * Fix [7393be0be6e7f91cbb2016fa777896e3895929e3|7393be0be6]: Tcl Thread ↵jan.nijtmans2016-06-141-7/+4
| | | | | | | | library doesn't work in Debug build on Windows_x64
* | Bring back Tcl_MutexLock() to exact implementation in Tcl 8.6.4. For ↵jan.nijtmans2015-10-181-35/+2
|\ \ | |/ | | | | details, see [ba44e415a0]: Use of mutexLock causes problem with reactive event handling in AndroWish
| * Bring back Tcl_MutexLock() to exact implementation in Tcl 8.5.18. For ↵jan.nijtmans2015-10-181-35/+2
| |\ | | | | | | | | | details, see [ba44e415a0]: Use of mutexLock causes problem with reactive event handling in AndroWish
| | * Proposed fix for [ba44e415a0]: "Use of mutexLock causes problem with ↵jan.nijtmans2015-10-171-32/+5
| |/ |/| | | | | | | reactive event handling in AndroWish". This basically undoes the retry mechamism in Tcl_MutexLock, introduced in [9f8b7bea53]. Does this retry mechamism hurt more than it helps? Feedback requested.
* | Fix [5d170b5ca5e12743006d737c79f959f3efabc644|5d170b5ca5]: checkin ↵jan.nijtmans2015-09-241-50/+4
|\ \ | |/ | | | | 9f8b7bea5344f1b0 broke netbsd's thread notifier
| * Fix [5d170b5ca5e12743006d737c79f959f3efabc644|5d170b5ca5]: checkin ↵jan.nijtmans2015-09-241-50/+4
| |\ | | | | | | | | | 9f8b7bea5344f1b0 broke netbsd's thread notifier
| | * merge trunk. jan.nijtmans2015-08-191-50/+4
| |/ |/| | | Remove now unused internal functions.
* | Fix bug [57945b574a6df0332efc4ac96b066f7c347b28f7|57945b574a]: lock in ↵jan.nijtmans2015-07-231-2/+81
|\ \ | |/ | | | | forking process under heavy multithreading. Thanks to Joe Mistachkin for the implementation of the fix, and Gustaf Neumann for the original report and testing the fix.
| * Fix bug [57945b574a6df0332efc4ac96b066f7c347b28f7|57945b574a]: lock in ↵jan.nijtmans2015-07-231-2/+81
| |\ | | | | | | | | | forking process under heavy multithreading. Thanks to Joe Mistachkin for the implementation of the fix, and Gustaf Neumann for the original report and testing the fix.
| | * This should completely fix the race conditions at the cost of more ↵Joe Mistachkin2015-05-171-7/+23
| | | | | | | | | | | | complexity. Also, on Unix, a more reliable means than Tcl_Sleep() of sleeping for a short time is needed.
| | * Fix deadlock.Joe Mistachkin2015-05-171-1/+1
| | |
| | * Draft fix for a potential race condition in the new ↵Joe Mistachkin2015-05-171-0/+63
| |/ |/| | | | | Tcl_MutexUnlockAndFinalize API. Not yet tested.
* | Unbreak msvc builds, by depending on tclPort.h for inclusion of <sys/stat.h>jan.nijtmans2013-02-101-1/+0
|\ \ | |/
* | Workaround for mingw versions which don't provide _fpcontrol in float.hjan.nijtmans2012-11-141-0/+8
|\ \
* \ \ 360894 Threads inherit floating point config from their creator threaddgp2012-11-131-4/+71
|\ \ \
* | | | Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts indkf2011-03-121-4/+4
| | | | | | | | | | | | rest of Tcl source code. No ABI change. API change *should* be harmless.
* | | | Now that we're no longer using SCM based on RCS, the RCS Keyword linesdgp2011-03-021-2/+0
|\ \ \ \ | | | | | | | | | | cause more harm than good. Purged them (except in zlib files).
* | | | | Fix various gcc-4.5.2 64-bit warning messages,nijtmans2011-01-251-2/+2
| | | | | | | | | | | | | | | | | | | | e.g. by using full 64-bits for socket fd's
* | | | | Simplify Tcl_AppInit and *_Init definitions.nijtmans2010-06-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change TclpThreadCreate and Tcl_CreateThread signature, making clear that "proc" is a function pointer, as in all other "proc" function parameters.
* | | | | Fix TCL_LL_MODIFIER for Cygwinnijtmans2010-01-131-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | and various other minor CYGWIN compilation problems
* | | | | * win/tclWinDde.c: VC++ 6.0 doesn't havenijtmans2010-01-101-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * win/tclWinReg.c PDWORD_PTR * win/tclWinThrd.c: Fix various minor gcc warnings. * win/tclWinTime.c * win/tclWinConsole.c Put channel type definitions * win/tclWinChan.c in static const memory * win/tclWinPipe.c * win/tclWinSerial.c * win/tclWinSock.c * generic/tclIOGT.c * generic/tclIORChan.c * generic/tclIORTrans.c * unix/tclUnixChan.c * unix/tclUnixPipe.c * unix/tclUnixSock.c * unix/configure (regenerated with autoconf 2.59) * tests/info.test: Make test independant from tcltest implementation.
* | | | | Style fixes (unfouling whitespace, sorting comments, removing useless casts, ↵dkf2009-01-091-10/+27
| | | | | | | | | | | | | | | | | | | | etc.)
* | | | | We need to initialize the thread id variable to 0 as on 64 bit windowspatthoyts2008-10-131-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this is a pointer sized field while windows only fills it with a 32 bit value. The result is an inability to join the threads as the ids cannot be matched.
* | | | | CONSTified 4 functions in the Notifier which all have a Tcl_Time* in it which isnijtmans2008-07-241-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | supposed to be a constant, but this was not reflected in the API: Tcl_SetTimer Tcl_WaitForEvent Tcl_ConditionWait Tcl_SetMaxBlockTime Introduced a CONST86, so extensions which have their own Notifier (are there any?) can be modified to compile against both Tcl 8.5 and Tcl 8.6. This change complies with TIP #24
* | | | | * win/tclWinThrd.c: Test for TLS_OUT_OF_INDEXES to make certain thatgeorgeps2008-07-161-1/+5
| | | | | | | | | | | | | | | | | | | | thread key creation is successful.
* | | | | TIP 285 ImplementationJoe Mistachkin2008-06-131-2/+2
| | | | |
* | | | | * generic/tcl.h: Make Tcl_ThreadDataKey a void *.georgeps2008-05-091-1/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclInt.h: Change around some function names and add some new per-platform declarations for thread-specific data functions. * generic/tclThread.c: Make use of of the new function names that no longer have a Tclp prefix. * generic/tclThreadStorage.c: Replace the core thread-specific data (TSD) mechanism with an array offset solution that eliminates the hash tables, and only uses one slot of native TSD. Many thanks to Kevin B. Kenny for his help with this. * unix/tclUnixThrd.c: Add platform-specific TSD functions for use by tclThreadStorage.c. * win/tclWinThrd.c: Add platform-specific TSD functions for use by tclThreadStorage.c.
* | | | | Get rid of pre-C89-isms (esp. CONST vs const).dkf2008-04-271-2/+2
| | | | |
| | | | * Unbreak msvc builds, by depending on tclPort.h for inclusion of <sys/stat.h>.jan.nijtmans2013-02-101-1/+0
| | | |/
| | | * Workaround for mingw versions which don't provide _fpcontrol in float.hjan.nijtmans2012-11-141-0/+8
| | | |\ | | |/ /
| | | * Workaround for mingw versions which don't provide _fpcontrol in float.hjan.nijtmans2012-11-141-0/+8
| | | |
| | * | 360894 Threads inherit floating point config from their creator thread.dgp2012-11-131-4/+71
| | |\ \ | | | |/
| | | * Make compilation of the fp control changes possible with MinGW.Joe Mistachkin2012-09-131-3/+10
| | | |
| | | * Free the WinThread structure before running the original thread procedure.Joe Mistachkin2012-09-131-1/+8
| | | |
| | | * Initial work on SF FRQ #3567063.Joe Mistachkin2012-09-131-4/+56
| | | |
| | * | [Bug 3388350] mingw64 compiler warningsjan.nijtmans2011-08-161-1/+1
| | |\ \ | |/ / / | | | _
| * | Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-021-2/+0
| |\ \ | | |/ | | | more harm than good. Purged them.
| | * Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-011-2/+0
| | | | | | | | | more harm than good. Purged them.
| | * Thread exit handler marks the current thread as un-initialized.vasiljevic2007-03-241-12/+7
| | | | | | | | | | | | | | | | | | This allows exit handlers that are registered later to re-initialize this subsystem in case they need to use some sync primitives (cond variables) from this file again.
| | * * win/tclWinThrd.c (TclpFinalizeThreadData): move tlsKey defnhobbs2005-05-301-20/+26
| | | | | | | | | | | | to top of file and clarify name (was 'key'). [Bug 1204064]
| | * Renamed TclWinFreeAllocCache to TclpFreeAllocCache and fixedvasiljevic2005-04-071-20/+21
| | | | | | | | | | | | | | | | | | to recognize when being called with NULL argument. This is a signal for it to clean up the tsd key associated with the threading allocator. Part of fixing the Tcl Bug #1178445.
| | * * generic/tclAlloc.c: Fixed [Tcl SF Bug 1030548], aandreas_kupries2004-10-281-3/+4
| | | | | | | | | | | | | | | | | | | | | * generic/tclThreadAlloc.c: threaded debug build on Windows * win/tclWinThrd.c: now works again. Had to touch Unix * unix/tclUnixThrd.c: as well. Basic patch by Kevin, with modifications by myself.
| | * * generic/tclEvent.c: Correct threaded obj allocator tohobbs2004-07-211-7/+28
| | | | | | | | | | | | | | | | | | | | | * generic/tclInt.h: fully cleanup on exit and allow for * generic/tclThreadAlloc.c: reinitialization. [Bug #736426] * unix/tclUnixThrd.c: (mistachkin, kenny) * win/tclWinThrd.c:
| | * Redefined MASTER_LOCK to call TclpMasterLock for the sake of Tcl APIvasiljevic2004-07-191-4/+6
| | | | | | | | | | | | users never creating interpreters.
| | * Corrected Tcl Bug #770053vasiljevic2004-06-221-3/+3
| | |
| | * * generic/tclInt.h:davygrvy2004-05-061-5/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclThread.c: * generic/tclEvent.c: * unix/tclUnixThrd.c: * win/tclWinThrd.c: Provisions made so masterLock, initLock, allocLock and joinLock mutexes can be recovered during Tcl_Finalize.