summaryrefslogtreecommitdiff
path: root/bin/Process_Unix.pm
diff options
context:
space:
mode:
authornobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-09-13 00:26:05 +0000
committernobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-09-13 00:26:05 +0000
commit7a042e4f8a987a50143415af690a878881d4b48f (patch)
tree338a92488326f0585d65743bd3d6ec0650fd6db1 /bin/Process_Unix.pm
parent9b50028195a935518c2716dcdb94d5bb167a0af2 (diff)
downloadATCD-TAO-1_0_4.tar.gz
This commit was manufactured by cvs2svn to create tag 'TAO-1_0_4'.TAO-1_0_4
Diffstat (limited to 'bin/Process_Unix.pm')
-rw-r--r--bin/Process_Unix.pm73
1 files changed, 0 insertions, 73 deletions
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;