异步文件系统IO

Swoole异步文件读写基于线程池同步IO模拟实现,文件读写请求投递到任务队列,然后由AIO线程读写文件,完成后通知主线程。

可使用swoole_async_set函数设置AIO线程数量,提高处理能力。请注意底层会在每个工作进程中分别创建AIO线程,因此假设设置了worker_num = 10thread_num = 10,将会启动100个线程。

  1. swoole_async_set([
  2. 'thread_num' => 16,
  3. ]);

冲突问题

请注意异步文件IO函数与Swoole\Process存在冲突,在创建线程池后如果调用new Process可能会导致多线程fork