windows(win10)下Workerman运行报错: Call to undefined function posix_getpid() in ……\Workerman\Worker.php
问题还原
在windows中调用运行workerman时调用stopAll()时报错
Call to undefined function posix_getpid() in ……\Workerman\Worker.php:1830
问题原因
posix_getpid函数依赖于POSIX扩展,而POSIX扩展不支持在Windowns中使用。
posix_getpid函数用于获取当前php进程pid,所以寻找其在windows下的替代方法。最终找到getmypid方法,这个方法在所有平台通用两者的具体差别暂不考虑。
解决方法
将报错处代码的posix_getpid方法替换为getmypid方法就好了