Sounds like you want to make it a daemon:
use IO::Socket;
use POSIX qw(WNOHANG setsid);
sub daemonize {
$SIG{CHLD} = 'IGNORE'; # Configure to autoreap zombies
die "Can't fork" unless defined ( my $child = fork ); # FORK
+<<<<<<<<<<<<
CORE::exit(0) if $child; # Parent exits
setsid(); # Become session leader
open( STDIN, "</dev/null" ); # Detach STDIN from shell
open( STDOUT, ">/dev/null" ); # Detach STDOUT from shell
open( STDERR, ">&STDOUT" ); # Detach STDERR from shell
chdir '/tmp'; # Change working directory
umask(0); # Reset umask
$ENV{PATH} = '/bin:/sbin:/usr/sbin'; # Reset PATH
}
Note: Verify your system supports autoreapping of zombies.
You can read more in this thread.