I'm interested in having a timeout that corresponds to clock time as
opposed to PHP execution time (the current behavior of
max_execution_time). A cursory scan of the source implies that (on
Unix at least) something that behaves like zend_set_timeout() but uses
setitimer()'s ITIMER_REAL timer instead of ITIMER_PROF would do the
trick. Before I investigate much further, a few questions:
- Is anyone aware of a reason why ITIMER_REAL would cause problems?
(Signal delivered while PHP is doing something uninterruptable?) - Assuming ITIMER_REAL works OK, is there interest in incorporating a
patch for a "max_real_time" config directive / timeout?
Thanks,
David
I'm interested in having a timeout that corresponds to clock time as
opposed to PHP execution time (the current behavior of
max_execution_time). A cursory scan of the source implies that (on
Unix at least) something that behaves like zend_set_timeout() but uses
setitimer()'s ITIMER_REAL timer instead of ITIMER_PROF would do the
trick. Before I investigate much further, a few questions:
- Is anyone aware of a reason why ITIMER_REAL would cause problems?
IIRC at least on some systems ITIMER_REAL is the same as alarm(), and
Apache uses alarm(), so we might have a conflict there.
--
Stanislav Malyshev, Zend Products Engineer
stas@zend.com http://www.zend.com/