Dylan T.

Results 339 issues of Dylan T.

Recently, some LB code had a problem with OPcache, because of IS_CONSTANT_AST constants being used in immutable classes. These AST were referencing constants which didn't exist on the target worker....

this is currently unfinished, and it will attempt to fire the autoloader for every class when INHERIT_ALL is used, which is not intended. the aim is to avoid class copying...

Any runnable class which declares anonymous classes inside its run() method will segfault when used, because the respective anonymous classes are not copied. The only clear way to address this...

Currently pthreads has some lifetime issues mostly surrounding child-to-parent-thread data passing of stuff like classes and functions. This is largely because of request-local interned strings which are used for basically...

In PHP 8.2, `ZEND_INIT_FCALL` assumes that the function exists: https://github.com/php/php-src/commit/da684582d74 This is fine for normal code, but pthreads may copy classes without copying functions (even when PTHREADS_INHERIT_NONE is used), creating...

Before this, readonly was silently ignored, so properties would be treated the same as normal properties. This change enforces write-once and no-unset policies for readonly properties. It also permits lockless...

During class copying, it's likely that many copies of the same string will be made, for example the names of properties and inherited methods. We can avoid this by putting...

performance

As described by [this test](https://github.com/pmmp/pthreads/blob/3f0aaf6cc378a1e65a2fd402165a8d3531b67a8d/tests/object-comparison.phpt#L4-L14), `==` between two `Threaded` objects actually tells whether the two objects are the same underlying Threaded object. This is no longer useful because we don't...

Clear limitations