, , , SIGINT , . , fork() , , .
SIGINT fork(), , kill() .
( ):
$SIG{INT} = sub { die "GOTCHA" };
my $parent_pid = $$;
defined( my $pid = fork() ) or die "Cannot fork() - $!";
if($pid == 0)
{
print "child started\n";
kill INT => $parent_pid;
}
else
{
while(1)
{
eval
{
print "inside parent\n";
<>;
};
if($@)
{
print "got the signal!!!!\n$@\n";
next;
}
}
}