Uebersicht

Der Architekturbereich beschreibt das interne Design der wichtigsten TrueAsync-Komponenten auf der C-Code-Ebene: Datenstrukturen, Algorithmen, Integration mit der Zend Engine und Interaktion zwischen dem PHP-Kern und der Async-Erweiterung.

Diese Materialien richten sich an Entwickler, die verstehen moechten, wie TrueAsync “unter der Haube” funktioniert, oder planen, eigene Erweiterungen zu erstellen.

TrueAsync ABI

Das Herzstueck der asynchronen ABI: Funktionszeiger, Erweiterungsregistrierungssystem, globaler Zustand (zend_async_globals_t), ZEND_ASYNC_*-Makros und API-Versionierung.

Koroutinen, Scheduler und Reactor

Internes Design des Koroutinen-Schedulers und Event-Reactors: Warteschlangen (Ringpuffer), Kontextwechsel ueber Fiber, Microtasks, libuv-Event-Loop, Fiber-Kontextpool und geordnetes Herunterfahren.

Events und das Event-Modell

zend_async_event_t – die Basisdatenstruktur, von der alle asynchronen Primitive erben. Callback-System, Ref-Counting, Event-Referenz, Flags, Event-Typ-Hierarchie.

Waker – Warte- und Aufweckmechanismus

Waker ist die Verbindung zwischen einer Koroutine und Events. Statuswerte, resume_when, Koroutinen-Callbacks, Fehlerweiterleitung, zend_coroutine_t-Struktur und Switch-Handler.

Garbage Collection im asynchronen Kontext

Wie PHP GC mit Koroutinen, Scope und Kontexten funktioniert: get_gc-Handler, Fiber-Stack-Traversierung, Zombie-Koroutinen, hierarchischer Kontext und Schutz vor zirkulaeren Referenzen.

Komponenten

Async\Pool

Universeller Ressourcenpool. Behandelte Themen:

PDO Pool

PDO-spezifische Schicht ueber Async\Pool. Behandelte Themen: