Windows下 Timer::delAll() 报错

mgzhenhong

bug描述

在Windows下调用 Timer::delAll() 报错

Error: Call to undefined function pcntl_alarm() in C:\Server_php\vendor\workerman\workerman\Timer.php:213

我看了下 Timer 中还有 tick() add() signalHandle() 方法都用了 pcntl_alarm

另外 Timer::init() 方法中调用 pcntl_signal 方法是不是错了

if (\function_exists('pcntl_signal')) {
    \pcntl_signal(\SIGALRM, array('\Workerman\Lib\Timer', 'signalHandle'), false);
}

应当是调用 \Workerman\Timer 中的 signalHandle 方法

系统环境及workerman/webman等具体版本

Windows
Workerman 4.1.4

633 1 0
1个回答

walkor

本地先将 C:\Server_php\vendor\workerman\workerman\Timer.php:213 pcntl_alarm(0) 调用删了吧,等下个版本修复

  • 暂无评论
年代过于久远,无法发表回答
🔝