Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:38848 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 30922 invoked from network); 8 Jul 2008 12:07:46 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Jul 2008 12:07:46 -0000 Authentication-Results: pb1.pair.com header.from=johannes@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=johannes@php.net; spf=unknown; sender-id=unknown Received-SPF: unknown (pb1.pair.com: domain php.net does not designate 83.243.58.163 as permitted sender) X-PHP-List-Original-Sender: johannes@php.net X-Host-Fingerprint: 83.243.58.163 mail4.netbeat.de Received: from [83.243.58.163] ([83.243.58.163:40521] helo=mail4.netbeat.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 74/20-29862-F8853784 for ; Tue, 08 Jul 2008 08:07:45 -0400 Received: (qmail 30344 invoked by uid 507); 8 Jul 2008 12:01:00 -0000 Received: from ppp-88-217-1-139.dynamic.mnet-online.de (HELO ?192.168.1.102?) (postmaster%schlueters.de@88.217.1.139) by mail4.netbeat.de with ESMTPA; 8 Jul 2008 12:01:00 -0000 To: Lucas Nealan Cc: internals@lists.php.net In-Reply-To: References: Content-Type: text/plain; charset=utf-8 Date: Tue, 08 Jul 2008 14:00:49 +0200 Message-ID: <1215518449.22654.2.camel@goldfinger.johannes.nop> Mime-Version: 1.0 X-Mailer: Evolution 2.22.2 (2.22.2-2.fc9) Content-Transfer-Encoding: 8bit Subject: Re: [PHP-DEV] [RFC] Zend Signal Handling From: johannes@php.net (Johannes =?ISO-8859-1?Q?Schl=FCter?=) 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 > >