jimmy5804 has asked for the wisdom of the Perl Monks concerning the following question:
The forked process (sleep.pl):#!/usr/bin/perl use IO::Socket; #defined(my $pid=fork) or die "Can't fork: $!"; #exit if $pid; #setsid or die "Can't start a new session: $!"; my $sock = new IO::Socket::INET ( "Proto" => "tcp", "LocalPort" => 8819, "Reuse" => 1, "Listen" => 1 ) or die "Server croaked"; $SIG{'USR1'} = \&sigHandler; system("./sleep.pl $$"); while($client = $sock->accept()) { } sub sigHandler { print "SIGNAL HANDLER\n"; }
If you know why my server is dying or you know A Much Better way to accomplish the same objective, I'd be very appreciative.#!/usr/bin/perl $ppid = $ARGV[0]; print "$ppid"; defined(my $pid=fork) or die "Can't fork: $!"; exit if $pid; setsid or die "Can't start a new session: $!"; while(1) { sleep(10); print "DISPATCHING SIGNAL\n"; kill(SIGUSR1, $ppid); }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Catching a signal causes my socket server to die
by ikegami (Patriarch) on Jan 07, 2009 at 09:12 UTC | |
by jimmy5804 (Initiate) on Jan 07, 2009 at 20:56 UTC | |
by ikegami (Patriarch) on Jan 08, 2009 at 01:29 UTC | |
by jimmy5804 (Initiate) on Jan 07, 2009 at 21:31 UTC | |
|
Re: Catching a signal causes my socket server to die
by lakshmananindia (Chaplain) on Jan 07, 2009 at 09:15 UTC | |
by ikegami (Patriarch) on Jan 07, 2009 at 09:26 UTC | |
|
Re: Catching a signal causes my socket server to die
by weismat (Friar) on Jan 07, 2009 at 11:48 UTC | |
by jimmy5804 (Initiate) on Jan 07, 2009 at 21:39 UTC |