Re: [ZEND-ENGINE-CVS] cvs: ZendEngine2 / zend.c
| From: | Stanislav Malyshev | Date: | Wed, 04 Jun 2003 13:25:50 +0000 |
| Subject: | Re: [ZEND-ENGINE-CVS] cvs: ZendEngine2 / zend.c | ||
| References: | 1 | Groups: | php.zend-engine.cvs |
| Request: | Send a blank email to php-zend-engine-cvs+get-1333@lists.php.net to get a copy of this message | ||
TCA>> > Why?
TCA>>
TCA>> i might me wrong but only mallocing the
TCA>> GLOBAL_CONSTANTS_TABLE in ZTS mode atleast looks bogous. but
TCA>> -again- i haven't looked at the code.
If you did, you'd see that non-ZTS branch calls zend_startup_constants
which malloc's EG(zend_constants). Now, CG(zend_constants) doesn't exist
at all in non-ZTS, neither does GLOBAL_CONSTANTS_TABLE have any meaning
besides being the same as EG(zend_constants). The difference between ZTS
and non-ZTS here is that thread-local EG(zend_constants) must be
hand-initialized from master-thread global_constants_table, while non-ZTS
locals are automatically created as a copies of EG(zend_constants) by the
fork magic and need not to be re-constructed.
HTH,
--
Stanislav Malyshev, Zend Products Engineer
stas@zend.com http://www.zend.com/ +972-3-6139665 ext.109