5
私のPHPコードでlibcurlがpoll
コールで無期限にスタックされているようです。プロセスidにstraceを実行したとき、libcurlがPOLLINタイムアウトでスタックしました
[[email protected] ~]$ 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を終了するにはどうすればいいですか?
「strace」を使用している場合+1 ...もっと多くの人が行った場合。 – Leigh