As for:

> For example, is the scheduler run-to-suspend?
> And non-preemptive behaviour only appears here in the thread. It isn’t 
> mentioned in the RFC itself.

There is no direct statement in the RFC that cooperative multitasking
is implemented.
I think this text was removed, and that needs to be fixed. But on the
other hand, there is a clear description of the contract expressed in
different words:

RFC: "A coroutine can stop itself passing control to the scheduler.
However, it cannot be stopped externally."

which essentially means the same thing.

This is exactly what constitutes the public contract between PHP and
the developer.

I included a list of I/O functions for demonstration purposes, but
this list is not part of the RFC.
It is part of the implementation. This means that not all I/O
functions can or should be adapted immediately.

Reply via email to