sub GotSignal($) { my $sig = shift; print "Got a $sig signal, exiting\n"; exit(0); } # Install signal handlers local $SIG{HUP} = 'IGNORE'; local $SIG{QUIT} = \&GotSignal('quit'); while (1) { # do stuff } #### # Install signal handlers local $SIG{HUP} = 'IGNORE'; local $SIG{QUIT} = sub { my $sig = shift; print "Got a $sig signal, exiting\n"; exit(0); }; while (1) { # do stuff }