On Thu, Dec 4, 2014 at 9:30 AM, Benjamin Eberlei <kont...@beberlei.de> wrote:
> Good morning,
>
> This is just a very small change, I propose this RFC for discussion to turn
> the C function "gc_collect_cycles" into a pointer.
>
> https://wiki.php.net/rfc/gc_fn_pointer
>
> Composer's garbage collection optimization showed that PHP Profilers fail
> to capture the dynamics of GC and we need better hooks to make this
> possible.

There are many other things that could be turned into function
pointers to allow extensions to hook.
Our hook strategy should be reviewed entirely.

Not only GC. If you look at streams, many of them are not
overwritable, and some are, but they are missing from the headers file
so you may not overwrite them.

I suggest we design a wider RFC for PHP7 about what we would be able
to hook, and what not (and what is the impact, because the more you
hook , the more complex it becomes about bad interactions).

This may also include a refactoring in the zend_module_entry and the
zend_extension structs. Fe, zend_extension hooks about the op_array
could be reworked , I find the op_array_dtor_handler hook misplaced in
the chain.
zend_module_entry could also benefit from refactoring to have a better
knowing of other extensions, and a true dependency manager.

Julien Pauli

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to