Re: [RFC] Zend Signal Handling

From: Date: Tue, 08 Jul 2008 12:00:49 +0000
Subject: Re: [RFC] Zend Signal Handling
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-38848@lists.php.net to get a copy of this message
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 > >

« previous php.internals (#38848) next »