pthreads-polyfill aims to satisfy the API requirements of pthreads, such that code written to depend on pthreads will work when pthreads is not, or can not be loaded.
pthreads-polyfill does not implement the same execution model, for obvious reasons, and has no external dependencies.
pthreads-polyfill will fill for v2 or v3, however behaviour is consistent with v3, which is the version new projects should target.
pthreads-polyfill is distributed with some unit tests, these tests should pass with and without pthreads loaded.
If pthreads is loaded by your configuration the polyfill will not be used.
Testing code coverage for pthreads-polyfill
phpdbg -nqrr vendor/bin/phpunit tests --coverage-text