I want subs to switch on and off my alarm so that i can call them when needed
Why? The code you showed first is more or less the usual code for having a timeout in some long running code. (You do know the example in perlipc, right?) If you don't need a timeout, just don't mess with alarm and $SIG{'ALRM'} at all.
In code:
withTimeout(30,\&doSomething,sub { die 'Oooops, doSomething was too sl
+ow' }); # <-- timeout after 30 seconds
doSomething(); # <-- no timeout here
If you still think that you need to "switch on and off", please explain your actual problem.
Alexander
--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)
|