Re: PHP True Async RFC Stage 4
| From: | Rob Landers | Date: | Wed, 15 Oct 2025 06:44:23 +0000 |
| Subject: | Re: PHP True Async RFC Stage 4 | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-128841@lists.php.net to get a copy of this message | ||
On Sun, Oct 5, 2025, at 07:23, Edmond Dantes wrote:
> Good day, everyone. I hope you're doing well.
>
> I’m happy to present the fourth version of the RFC. It wasn’t just me
> who worked on it — members of the PHP community contributed as well.
> Many thanks to everyone for your input!
>
> https://wiki.php.net/rfc/true_async
>
> **What has changed in this version?**
>
> The RFC has been significantly simplified:
>
> 1. Components (such as TaskGroup) that can be discussed in separate
> RFCs have been removed from the current one.
> 2. Coroutines can now be created anywhere — even inside shutdown_function.
> 3. Added Memory Management and Garbage Collection section
>
> Although work on the previous API RFC was interrupted and we weren’t
> able to include it in PHP 8.5, it still provided valuable feedback on
> the Async API code.
>
> During this time, I managed to refactor and optimize the TrueAsync
> code, which showed promising performance results in I/O scenarios.
>
> A test integration between **NGINX UNIT** and the **TrueAsync API**
> was implemented to evaluate the possibility of using PHP as an
> asynchronous backend for a web server:
>
> https://github.com/EdmondDantes/nginx-unit/tree/true-async/src/true-async-php
>
> During this time, the project has come very close to beta status.
>
> Once again, I want to thank everyone who supported me during difficult
> times, offered advice, and helped develop this project.
>
> Given the maturity of both the code and the RFC, this time I hope to
> proceed with a vote.
>
> Wishing you all a great day, and thank you for your feedback!
>
Hello,
I’m not even half way done with a list of comments and questions, but I have one that continues to
bother me while reading, so I figure I will just ask it.
Why doesn’t scope implement Awaitable?
— Rob