in reply to Guard, Scope::Guard and End defunct in perl 5.12?

Ctrl+C

$ perl -MGuard -le " $SIG{INT}=sub{warn 2}; {scope_guard { warn 1 }; +sleep 3 } " 1 at -e line 1. $ perl -MGuard -le " $SIG{INT}=sub{warn 2}; {scope_guard { warn 1 }; +sleep 3 } " 2 at -e line 1. 1 at -e line 1. $ perl -MGuard -le " $SIG{INT}=sub{warn 2}; {scope_guard { warn 1 }; +sleep 3 } " 2 at -e line 1. 2 at -e line 1. 2 at -e line 1. 2 at -e line 1. 2 at -e line 1. 2 at -e line 1. 2 at -e line 1. 2 at -e line 1. 1 at -e line 1. $ perl -MGuard -le " $SIG{INT}=sub{warn 2;exit }; {scope_guard { warn + 1 }; sleep 3 } " 2 at -e line 1. 1 at -e line 1.
The last one also causes a "fault" here on win32 5.14.1

Replies are listed 'Best First'.
Re^2: Guard, Scope::Guard and End defunct in perl 5.12?
by mzedeler (Pilgrim) on Feb 07, 2012 at 20:24 UTC
    Yes - so by setting up a signal handler, I can trigger the guard. Thanks (also to Moritz).