Commit Graph

64 Commits

Author SHA1 Message Date
Zeev Suraski
18f4a3f9ff Merge 2005-03-20 09:03:40 +00:00
Anantha Kesari H Y
e32ae40fbf NetWare has pthreads implementation 2005-02-21 10:05:07 +00:00
Marcus Boerger
32bdaae133 Apply the fix 2004-07-15 22:17:55 +00:00
Andi Gutmans
c495c54069 - Fix typo although it isn't being built 2004-05-23 16:05:09 +00:00
Marcus Boerger
fbb28b36b7 - Once ts_free_id() will be used, we cannot call ctors for deleted ids
when creating new threads.
2004-05-13 06:53:21 +00:00
Marcus Boerger
88a02ba159 - More work on ts_free_id() but still keep it out 2004-05-12 22:28:28 +00:00
Marcus Boerger
c0be906309 ifdef out the ts_free_id until php 5.1 and until it is complete 2004-05-12 22:17:01 +00:00
Marcus Boerger
8e52e04c30 - Implement ts_free_id() 2004-05-12 10:30:46 +00:00
Stanislav Malyshev
07266a10ab Disabled calling dtors on tsrm_shutdown - calling dtors in tsrm_shutdown makes
modules registering TSRM ids to crash, if they have dtors, since the module
is unloaded before tsrm_shutdown is called. Can be re-enabled after
tsrm_free_id is implemented.
2004-03-30 16:56:01 +00:00
Marcus Boerger
c1e905dfc1 Removed doubled loop from wrongly applied patch 2003-12-14 15:41:50 +00:00
Zeev Suraski
3788ddb383 Fix from Michael Sisolak (destructors weren't always properly called) 2003-12-14 09:36:23 +00:00
Ilia Alshanetsky
5ead9d369e Fixed bug #17414 (pthreads bug work around)
Patch by timo.teras[at]iki.fi
2003-08-05 20:03:54 +00:00
Sebastian Bergmann
60ffd0ea5d Restore HEAD of TSRM to what it was two days ago. 2003-06-25 05:05:06 +00:00
James Cox
76f85107e2 bring head into sync with the php4 branch 2003-06-23 01:27:13 +00:00
Zeev Suraski
e8de102cd6 Fix leaks 2003-01-07 12:11:40 +00:00
Zeev Suraski
efb9fdf0e6 call dtors on shutdown 2003-01-07 10:33:22 +00:00
Anantha Kesari H Y
455257974b NetWare related changes/modifications. 2003-01-02 14:29:00 +00:00
Andi Gutmans
bdc5bb5739 - Fix TSRM_ERROR macro 2002-11-05 17:34:47 +00:00
Derick Rethans
cdc3b6d652 - Whitspace 2002-10-05 11:34:02 +00:00
David Reid
2a0fbded3d Add BeOS thread support to TSRM. This should not impact on any other OS's
but allows us to build PHP with threading support and therefore we can
build as an Apache 2 module.

The locking is currently done using benaphores but this may be reviewed.
2002-10-05 11:26:17 +00:00
Harald Radi
99c90db11a make win32 debug output more verbose 2002-08-07 14:47:42 +00:00
Venkat Raghavan S
d69261d12c Basic NetWare changes 2002-05-28 08:54:17 +00:00
Andi Gutmans
3baef4690a - Also cache TSRM lookups in thread local storage on Windows. 2001-07-30 05:46:31 +00:00
Zeev Suraski
0701d68f97 Save TSRMLS_FETCH()'s 2001-07-30 01:46:35 +00:00
Zeev Suraski
cba5dd7546 Fix release runtime :) 2001-07-27 11:03:32 +00:00
Zeev Suraski
0c9d455a81 Fix release build 2001-07-27 10:53:25 +00:00
Zeev Suraski
736b4ae43d - Prepare for optimization - use a single fetch for multiple resources
- Clean a bit
2001-07-27 10:08:26 +00:00
Sascha Schumann
c1938e3f13 Portable use of multiple arguments macro without generating lots of
warnings when doing nothing.
2001-07-23 04:16:31 +00:00
Sascha Schumann
6ae7e5f54a Support for SGI's State Threads. Will be used by PHP's thttpd SAPI
initially.
2001-06-21 16:54:05 +00:00
Andi Gutmans
dfa9179887 - Commit test passed 2001-04-27 19:11:35 +00:00
Andi Gutmans
3f72a97dbb - Testing commit script 2001-04-27 19:10:58 +00:00
Andi Gutmans
a2dbc5babd - Fix some ws to be like the rest of TSRM 2001-04-27 18:50:35 +00:00
Andi Gutmans
42fbe5be4b - Whitespace 2001-04-05 14:02:08 +00:00
Andi Gutmans
a943751310 - Lock the whole thing for now in order not to have a race condition.
It shouldn't effect performance too much because usually threads are
  reused a few times before they are nuked by the web server, at least
  under IIS and Zeus.
2001-04-05 14:00:54 +00:00
Andi Gutmans
6123fe515d - Revert previous fix because dtor's which access thread local storage
might stop working. Need to fix this! We can either mutex the whole thing
  which is slow (this is how it was before the race condition was introduced)
  or find a different solution.
2001-04-04 21:43:04 +00:00
Andi Gutmans
78861607d7 - Fix race condition in ts_free_thread(). 2001-04-04 17:05:10 +00:00
Andi Gutmans
9047e5c956 - Use tabs and not spaces !!! 2001-04-04 16:33:06 +00:00
Andi Gutmans
ac8ab87841 - This can explain lots of instability on multi-threaded platforms! 2001-04-04 16:25:29 +00:00
Ben Mansell
5d6cb2fc32 Speedup for pthread implementation. We make use of thread local storage
to allow access to the current thread's resources without having to
obtain the memory mutex and traverse our hash table. This is a big
performance win!
2001-03-06 15:07:57 +00:00
Zeev Suraski
b22a6ef2b1 Fix a TSRM bug (possibly fixing a sporadic crash in the timeout window
under Windows) - fix from Ben Mansell
2001-03-01 01:06:36 +00:00
Shane Caraveo
d0dbf1ea57 my mistake...freed in a different function. 2001-01-08 00:35:05 +00:00
Shane Caraveo
65eac44f69 be sure to unlock that mutex before returning! 2001-01-08 00:32:18 +00:00
Zeev Suraski
1ebdb6fa14 Beef up debugging support 2000-11-18 02:41:14 +00:00
Zeev Suraski
d5a09981d6 Import debug-level improvements to TSRM, by Dmitri Dmitrienko 2000-11-17 23:31:15 +00:00
Andi Gutmans
92cfa27ff0 - Use TSRM_WIN32 2000-09-02 15:03:19 +00:00
Andi Gutmans
3d95c23c96 - Support for always building TSRM into PHP 2000-08-31 23:44:10 +00:00
Andi Gutmans
a2ea62d4c9 - Change license of .c and .h files of TSRM. It's still not the complete
- text like in the PHP headers because we don't have it on the web yet but
- it should be enough to allow Sascha to touch TSRM :)
2000-08-31 19:02:14 +00:00
Andi Gutmans
a4edfc06c5 - Export ts_resource_ex in order to succesfully build Windows version 2000-06-17 14:56:19 +00:00
Zeev Suraski
33f9499975 Make it possible to access other threads' local storage. Only use it if you have a clear
knowledge of what you're doing!
2000-06-16 14:38:05 +00:00
Sascha Schumann
d3a7f5be38 Make TSRM compile again. ZTS is defined by a header file included in
tsrm_config.h, so TSRM.o was always empty.
2000-06-06 00:16:16 +00:00