Hallo, Ich muss mehrere Perl-Skripte in einem Perl-Skript starten und PID und andere Daten in einer DB abspeichern. Ich verwende dafür Parallel:Jobs:start_job.
Beispiel:
#!/usr/bin/perl -w
use strict;
use Parallel::Jobs qw(start_job); my $i;
my $count = 5;
...
while($i < $count) {
$pid = Parallel::Jobs::start_job('perl proc'.$i.'.pl');
# dann erfolgt der Eintrag in die DB
...
$i++
}
Mein Problem bei dieser Methode ist die Fehlerbehandlung. Wenn ich z.B. proc7.pl (was nicht existiert) starte, weist er $pid trotzdem ein PID zu, die dann in der DB eingetragen wird, obwohl der Prozess gar nicht gestartet wurde.
Wie finde ich verlässlich heraus, ob jetzt ein Skript tatsächlich gestartet wurde oder nicht?
Hat vielleicht jemand eine Ahnung, wie ich das machen kann oder einen Vorschlag, wie ich es anders machen könnte? Löst jemand mein Problem auf eine andere Art und Weise? Bin für jeden Vorschlag sehr dankbar!
LG Michael
Datum: 19.04.2007-09:54
