From 03154c9a5b9e8628d31bd9032549327d51304645 Mon Sep 17 00:00:00 2001 From: nobody Date: Mon, 30 Aug 1999 19:34:27 +0000 Subject: This commit was manufactured by cvs2svn to create tag 'pre_multiple_profile_server'. --- bin/Process_Unix.pm | 73 ----------------------------------------------------- 1 file changed, 73 deletions(-) delete mode 100644 bin/Process_Unix.pm (limited to 'bin/Process_Unix.pm') diff --git a/bin/Process_Unix.pm b/bin/Process_Unix.pm deleted file mode 100644 index af1041616ea..00000000000 --- a/bin/Process_Unix.pm +++ /dev/null @@ -1,73 +0,0 @@ -# $Id$ -package Process; - -use POSIX "sys_wait_h"; - -sub Create -{ - my $name = shift; - my $args = shift; - my $self = []; - - FORK: - { - if ($self->[0] = fork) - { - #parent here - bless $self; - } - elsif (defined $self->[0]) - { - #child here - exec $name." ".$args; - die "ERROR: exec failed for <$name> <$args>"; - } - elsif ($! =~ /No more process/) - { - #EAGAIN, supposedly recoverable fork error - sleep 5; - redo FORK; - } - else - { - # weird fork error - print STDERR "ERROR: Can't fork: $!\n"; - } - } -} - -sub Terminate -{ - my $self = shift; - kill ('TERM', $self->[0]); - # print STDERR "Process_Unix::Kill 'TERM' $self->[0]\n"; -} - -sub Kill -{ - my $self = shift; - kill ('KILL', $self->[0]); - # print STDERR "Process_Unix::Kill 'TERM' $self->[0]\n"; -} - -sub Wait -{ - my $self = shift; - waitpid ($self->[0], 0); -} - -sub TimedWait -{ - my $self = shift; - my $maxtime = shift; - while ($maxtime-- != 0) { - my $pid = waitpid ($self->[0], &WNOHANG); - if ($pid != 0 && $? != -1) { - return $?; - } - sleep 1; - } - return -1; -} - -1; -- cgit v1.2.1