|
| 1 | +# Kraken Framework - Loop Component |
| 2 | + |
| 3 | +[](https://travis-ci.org/kraken-php/framework) |
| 4 | +[](https://packagist.org/packages/kraken-php/loop) |
| 5 | +[](https://packagist.org/packages/kraken-php/loop) |
| 6 | +[](https://packagist.org/packages/kraken-php/loop) |
| 7 | +[](https://packagist.org/packages/kraken-php/framework) |
| 8 | + |
| 9 | +> **Note:** This repository is part of [Kraken Framework][3]. It can be used as standalone library, but for the best |
| 10 | +efficiency we suggest you to also check out the rest of [Kraken Repository][5]. |
| 11 | + |
| 12 | +<br> |
| 13 | +<p align="center"> |
| 14 | +<img src="https://avatars2.githubusercontent.com/u/15938282?v=3&s=150" /> |
| 15 | +</p> |
| 16 | + |
| 17 | +## Description |
| 18 | + |
| 19 | +Kraken/Loop is component that provides abstraction layer for writing asynchronous code in PHP on single thread or process |
| 20 | +with usage of single or multiple loops. |
| 21 | + |
| 22 | +See more in [official documentation][2]. |
| 23 | + |
| 24 | +## Feature Highlights |
| 25 | + |
| 26 | +Kraken/Loop features: |
| 27 | + |
| 28 | +* Interface for writing asynchronous code on single Thread or Process, |
| 29 | +* File descriptor polling, |
| 30 | +* One-time and periodic timers, |
| 31 | +* Deferred execution of callbacks, |
| 32 | +* Support for StreamSelect -based loops, |
| 33 | +* ~~Support for LibEvent -based loops~~, |
| 34 | +* ~~Support for LibEv -based loops~~, |
| 35 | +* ~~Support for ExtEvent -based loops~~, |
| 36 | +* Support for using multiple loops with multiple execution flows, |
| 37 | +* Support for switching between loops and importing/exporting its unfinished queues, |
| 38 | +* ReactPHP compatibility, |
| 39 | +* ReactPHP EventLoop adapters, |
| 40 | +* Kraken Framework compatibility, |
| 41 | +* ...and more. |
| 42 | + |
| 43 | +## Requirements |
| 44 | + |
| 45 | +* PHP-5.5, PHP-5.6 or PHP-7.0+, |
| 46 | +* UNIX or ~~Windows~~ OS. |
| 47 | + |
| 48 | +## Installation |
| 49 | + |
| 50 | +``` |
| 51 | +composer require kraken-php/loop |
| 52 | +``` |
| 53 | + |
| 54 | +## Tests |
| 55 | + |
| 56 | +Tests are provided in [Framework Repository][3]. |
| 57 | + |
| 58 | +## Documentation |
| 59 | + |
| 60 | +Documentation for this module can be found in the [official documentation][2]. |
| 61 | + |
| 62 | +## Contributing |
| 63 | + |
| 64 | +This library is read-only subtree split of Kraken Framework. To make contributions, please go to [Framework Repository][3]. |
| 65 | + |
| 66 | +## License |
| 67 | + |
| 68 | +This library licensed under the same license as [Kraken Framework][3]. |
| 69 | + |
| 70 | +[1]: http://kraken-php.com |
| 71 | +[2]: http://kraken-php.com/docs/0.3/loop |
| 72 | +[3]: https://github.com/kraken-php/framework |
| 73 | +[4]: https://github.com/kraken-php/kraken |
| 74 | +[5]: https://github.com/kraken-php |
0 commit comments