PHPackages                             krzysztofzylka/event-loop - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. krzysztofzylka/event-loop

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

krzysztofzylka/event-loop
=========================

1.0.0(8mo ago)01411PHPPHP &gt;=8.3

Since Oct 27Pushed 8mo agoCompare

[ Source](https://github.com/krzysztofzylka/event-loop)[ Packagist](https://packagist.org/packages/krzysztofzylka/event-loop)[ RSS](/packages/krzysztofzylka-event-loop/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (1)

krzysztofzylka/event-loop
=========================

[](#krzysztofzylkaevent-loop)

Lekka, szybka i w pełni asynchroniczna pętla zdarzeń napisana w czystym PHP 8.3+, inspirowana ReactPHP oraz Node.js.
Bazuje na `stream_select()`, dzięki czemu działa bez zewnętrznych rozszerzeń, a teraz dodatkowo potrafi wykonywać kosztowne zadania w osobnych procesach.

---

Wymagania
---------

[](#wymagania)

- PHP &gt;= 8.3
- Opcjonalnie `ext-pcntl` – wymagane do timerów procesowych (GNU/Linux, macOS)

---

Instalacja
----------

[](#instalacja)

```
composer require krzysztofzylka/event-loop
```

---

Najważniejsze funkcje
---------------------

[](#najważniejsze-funkcje)

- Asynchroniczne I/O oparte na `stream_select()`.
- Timery jednorazowe i cykliczne z priorytetami (`HIGH`, `NORMAL`, `LOW`).
- Future ticks – natychmiastowe callbacki uruchamiane po bieżącej iteracji pętli.
- Obsługa strumieni odczytu i zapisu.
- Obsługa sygnałów systemowych (`SIGINT`, `SIGTERM` itd.).
- **Timery procesowe** – uruchamianie ciężkich zadań w osobnych procesach (jednorazowo i cyklicznie).
- Konfigurowalne sterowniki pętli (`LoopConfig`) oraz tagowanie timerów i strumieni.
- Brak zewnętrznych zależności – działa nawet na shared hostingu.

---

Szybki start
------------

[](#szybki-start)

```
