bugdhdj/pthwools

pthread 的 polyfill

dev-master 2021-07-28 15:39 UTC

This package is auto-updated.

Last update: 2024-09-26 20:38:39 UTC


README

GitHub license Composer packagist

pthwools 旨在通过 swoole 满足 pthreads 的 API 要求,使得依赖于 pthreads 的代码在没有 pthreads 或无法加载 pthreads 时仍然可以工作。

由于明显的原因,pthwools 不实现相同的执行模型,但使用 swoole 协程来实现异步代码执行和多核优化。

pthwools 只为 v3 版本提供填充,行为与 v3 版本一致,这是新项目应设定的目标版本。

它在 bugdhdj/PocketMine-MP-Swoole 项目中使用。

测试

pthwools 随带一些单元测试,这些测试应该在没有加载 pthreads 时通过。

测试 pthwools

phpunit tests

如果你的配置加载了 pthreads,则不会使用 pthwools。

测试 pthwools 的代码覆盖率

phpdbg -nqrr vendor/bin/phpunit tests --coverage-text