Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re^3: die through several evals

by kennethk (Abbot)
on Apr 24, 2013 at 17:59 UTC ( #1030469=note: print w/ replies, xml ) Need Help??

in reply to Re^2: die through several evals
in thread die through several evals

What sort of tasks/side effects are happening in the subroutines? You may be able to solve your issue with a fork, a la:

use strict; use warnings; if (my $pid = fork) { eval { local $SIG{ALRM} = sub{die "Timeout hit\n"}; alarm 1; wait; alarm 0; 1; } or do { print $@; kill 9, $pid; } } else { magick_die(); exit; } sub magick_die { my $var = 0; for (1 ... 1000000) { $var++ for 1 .. 1000000; } }

If you need to pass information back and forth, you could serialize over pipes.

#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

Comment on Re^3: die through several evals
Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1030469]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (10)
As of 2015-12-01 21:14 GMT
Find Nodes?
    Voting Booth?

    My keyboard shows this many letters:

    Results (27 votes), past polls