ReactPHP-EventLoop
事件循环组件
ReactPHP的核心反应器事件循环,可以用于事件I/O。
为了使基于异步的库能够互操作,它们需要使用相同的事件循环。该组件提供了任何库可以定位的公共LoopInterface。这让他们在同一个循环下使用,通过一个由用户控制的run()调用。
快速入门实例
这是一个异步HTTP服务,仅用事件循环构建。
$loop = React\EventLoop\Factory::create();
$server = stream_socket_server('tcp://127.0.0.1:8080');
stream_set_blocking($server, false);
$loop->addReadStream($server, function ($server) use ($loop) {
$conn = stream_socket_accept($server);
$data = "HTTP/1.1 200 OK\r\nContent-Length: 3\r\n\r\nHi\n";
$loop->addWriteStream($conn, function ($conn) use (&$data, $loop) {
$written = fwrite($conn, $data);
if ($written === strlen($data)) {

ReactPHP的事件循环组件是其核心,用于处理异步I/O。文章介绍了如何使用事件循环,包括创建、选择不同的循环实现如StreamSelectLoop、ExtEventLoop等,并通过实例展示了如何添加一次性及周期性计时器。此外,还提到了LoopInterface的run()和stop()方法及其注意事项。
最低0.47元/天 解锁文章
1622

被折叠的 条评论
为什么被折叠?



