alex: system aufruf abbrechen wenn dieser länger als x Sekunden dauert

hi,

ich habe das Problem, daß ein Systemaufruf (z.B.):

my $whois = whois $domain;

manchmal extrem lange dauert. Deswegen suche ich nach einer Möglichkeit die Dauer zu begrenzen und bei Überschreitung das ganze abzubrechen.

leider hab ich keine Ahnung wie ich das machen soll, hat jemand ne Idee?

Bitte keine Antworten wie nimm doch das Modul xy um whois zu machen..., ich such ne generelle Lösung ;)

danke, alex

  1. Bitte keine Antworten wie nimm doch das Modul xy um whois zu machen..., ich such ne generelle Lösung ;)

    Mit einem Modul wäre eine generelle Lösung möglich, mit alarm(), aber ob du einen system Befehl damit abbrechen kannst bezweifle ich.

    Struppi.

    --
    Javascript ist toll (Perl auch!)
    1. Bitte keine Antworten wie nimm doch das Modul xy um whois zu machen..., ich such ne generelle Lösung ;)

      Mit einem Modul wäre eine generelle Lösung möglich, mit alarm(), aber ob du einen system Befehl damit abbrechen kannst bezweifle ich.

      Struppi.

      http://de.selfhtml.org/perl/funktionen/systemaufrufe.htm#alarm

      danke für den alarm() tipp. sieht erstmal so aus, als wäre das ne idee :)

      alex

      1. funzt, nur hat es einen haken... zombies ;)

        die muss ich jetzt auch noch los werden...

        alex

        1. Hell-O!

          funzt, nur hat es einen haken... zombies ;)

          Ansätze, diese zu vermeiden, findest du in perlipc.

          Siechfred

          --
          Ich bin strenggenommen auch nur interessierter Laie. (molily)
          Zitat des Tages || Falle Aufteilungsbescheid || RT 221 Erfurt-Altstadt i.V.
  2. hi,

    ich habe das Problem, daß ein Systemaufruf (z.B.):

    my $whois = whois $domain;

    manchmal extrem lange dauert. Deswegen suche ich nach einer Möglichkeit die Dauer zu begrenzen und bei Überschreitung das ganze abzubrechen.

    Am Besten koppelst Du solche Prozesse ab mit fork();

    --roro