0
我已經制作了一個程序,可以以2種方式終止,或者用戶輸入一個字符串say-「kill」或者一個特定的線程信號SIGINT。perl:線程終止被用戶輸入阻塞
在此終止線程我有一個聲明(趕上「殺」):
$a = <>;
後跟一個回報;「 我有適當的信號處理程序(INT)太上不頂:
print "signal received\n";
threads->exit();
但在自動終止的情況下(即SIGINT從其他線程發送),打印語句不來,直到無論等待多久,我都按下一些鍵。我想<>正在阻止。
有人請告訴我如何在自動終止的情況下提供某種輸入到<>,以便立即看到結果。
謝謝。
裏面調用到<>您的線程給控制操作系統。所以,是的,它阻止了一個eof。 – starbolin
如果你想打破的話,你需要的不是line-i/o。 – starbolin