Hi Lucas, > I am proposing the following RFC to improve signal handling in the Zend > Engine:
thanks for the patch, next to platform specific stuff I'm wondering whether the shutdown order is right: - /* 2. Call all possible __destruct() functions */ + /* 2. Reset max_execution_time (no longer executing php code after shutdown functions) */ + zend_try { + zend_unset_timeout(TSRMLS_C); + } zend_end_try(); + + /* 3. Call all possible __destruct() functions */ zend_try { zend_call_destructors(TSRMLS_C); } zend_end_try(); - /* 3. Flush all output buffers */ + /* 4. Flush all output buffers */ zend_try { php_end_ob_buffers((zend_bool)(SG(request_info).headers_only?0:1) TSRMLS_CC); } zend_end_try(); Destructors can be PHP code, as can some ob callback so I think the order should be changed. johannes On Sun, 2008-07-06 at 11:56 -0700, Lucas Nealan wrote: > Hi Internals, > > I am proposing the following RFC to improve signal handling in the Zend > Engine: > > http://wiki.php.net/rfc/zendsignals > > The purpose of zend internal deferred signal handling is to improve the > stability of PHP and extensions when running under any forking SAPI. > Additionally heavy users of APC or other bytecode caches under Apache 1.x > may also see a performance improvement. > > Please see follow the link above to the complete RFC for details. I look > forward to hearing feedback. > > -lucas > > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php