wsl跑swoole,发现signalfd函数不存在,这会造成什么影响呢?

代码

就是跑了一个http server

<?php

$http = new swoole_http_server("127.0.0.1", 9501);

$http->on('request', function ($request, $response) {
    $response->end("<h1>Hello Swoole. #".rand(1000, 9999)."</h1>");
});
$http->start();

warning

[2018-05-25 15:01:13 @17.0]     WARNING swSignalfd_setup: signalfd() failed. Error: Function not implemented[38]
[2018-05-25 15:01:13 *23.0]     WARNING swSignalfd_setup: signalfd() failed. Error: Function not implemented[38]

访问localhost,响应也能过来,这个警告对开发没什么影响吧?不懂这个函数干嘛的。

阅读 3.3k
1 个回答

这个问题已经有人在 Swoole 提过 issue。

可能是高版本gcc+低版本内核导致的,libc中有signalfd的函数,但是linux内核不支持。可以修改Makefile去掉HAVE_SIGNALFD或升级Linux内核。

具体可以去看下 这个问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题