
kavkazi
New User
Oct 15, 2012, 1:46 PM
Post #1 of 4
(1257 views)
|
|
Someone please help, I am absolutely stuck on this simple issue
|
Can't Post
|
|
I have a simple perl script that calls a shell script which for whatever reason "hangs". I want to simply force a time out after 20 seconds. I did a lot of research and was brought to perl Alarms. It works when I test with sleep(), but when running the shell script the alarm doesn't kick in. Can someone please help???? Here is my code. Thanks in Advance.
#!/bin/perl use strict; use warnings; use CGI; my $q = new CGI; print $q->header; eval { local %SIG; $SIG{ALRM}= sub{ die "timeout reached, after 20 seconds!\n"; }; alarm 20; #sleep (60); system("/opt/bea/domain/fsa/scripts/start.sh"); alarm 0; }; alarm 0; if($@) { print "Error: $@\n"; } exit(0);
|