AnyEvent::Subprocess::Job::Delegate::Timeout - Kill a subprocess if it takes too long
my $timed = AnyEvent::Subprocess::Job::Delegate::Timeout->new( name => 'timeout', time_limit => 10, # 10 seconds kill_with => 'FIRE', # may not be available on your OS ); my $job = AnyEvent::Subprocess->new( delegates => [$timed], code => ... ); my $run = $job->run;
my $done = ...; say 'your job took too long, so i killed it with fire' if $done->delegate('tiemout')->timed_out;
Number of seconds to allow the subprocess to run for. Required.
UNIX signal to kill the subprocess with when its time expires. Defaults to SIGKILL.
Jonathan Rockway <email@example.com>
This software is copyright (c) 2011 by Jonathan Rockway.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.