0
我想從我正在處理的腳本獲取一些調試輸出。出於某種原因,下面的代碼不會輸出任何東西:試圖用信號事件處理程序輸出數據不起作用
$SIG{'HUP'} = \&dump_state;
sub dump_state {
print "dumping state: \n\n";
debug(Dumper($state));
}
我與INT和TERM信號,試圖以此爲好,但我沒有得到任何輸出。什麼可能導致這種情況發生?我很茫然。
我也忘了提及「debug()」是應用程序中的一個小子,它只是用一些顏色編碼打印到STDERR。在腳本中的其他地方工作是已知的。
替換'debug'與'打印STDERR'以消除是一個問題。你什麼都得不到輸出,甚至沒有「傾銷國家」? '$ state'可能是空的,但即使這樣也會拋出一些東西。 – Schwern 2012-03-20 18:16:11
愚蠢的問題:你發送SIGHUP的程序? – mob 2012-03-20 19:13:33
您提供的程序不會因您所屬的問題而受到影響。 – ikegami 2012-03-20 20:00:31