我的 php 代码中的 libcurl 似乎无限期地卡在poll
调用中。当我对进程 ID 进行 strace 时,
[user@server ~]$ sudo strace -p 19559
Process 19559 attached - interrupt to quit
poll([{fd=7, events=POLLIN}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 0) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 0) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 0) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 0) = 0 (Timeout)
poll([{fd=7, events=POLLIN}], 1, 1000) = 0 (Timeout)
这种情况无限期地进行。fd 7 在 /proc/19559/fd 中显示为
lrwx------ 1 root root 64 Sep 19 19:44 7 -> socket:[335178801]
有人可以告诉我为什么会这样。超时时我该怎么做才能使 libcurl 退出