my $exitflag = 1; $SIG{TERM} = sub { $exitflag = 0 }; while( $exitflag ) { my $ua = new LWP::UserAgent; $ua->agent("AgentName/0.1 " . $ua->agent); $ua->timeout(300); my $req = HTTP::Request->new(GET => $urlsafe); # # if the signal comes in this function, i get an timeout as result my $res = $ua->request($req); #... do something }