2012-07-11 68 views

回答

7

陷阱的终止信号和重新路由他们这样的东西,最简单的是:

$SIG{TERM} = $SIG{INT} = $SIG{QUIT} = $SIG{HUP} = sub { die; }; 
+1

谢谢你,这个工作。只有我得到了指定的子程序在^ C信号后执行三次... – 2012-07-11 13:13:05

+3

@Janis所以,现在你知道,^ C信号是一个3个不同的信号;)也许你只想使用一个信号,比如'QUIT'或者'TERM'或'INT'。只重新路由其中之一。 – gaussblurinc 2012-07-11 13:18:08

+2

或者你可以让'sub'记住它已经被调用。 ['state'](http://perldoc.perl.org/functions/state.html)关键字可能对此很有帮助。 – simbabque 2012-07-11 13:42:07

相关问题