WX :: perl :: processstream

Zugriff auf externe Prozesse über Ereignisse
Jetzt downloaden

WX :: perl :: processstream Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Mark Dootson
  • Website des Verlags:
  • http://search.cpan.org/~mdootson/

WX :: perl :: processstream Stichworte


WX :: perl :: processstream Beschreibung

WX :: Perl :: ProcessStream ist ein Perl-Modul, das den stdout-, stderr- und Beendigungscodes asynchron ausgeführter Prozesse über Ereignisse bereitstellt. Es kann für lange Lauf- oder Blockierprozesse verwendet werden, die periodische Aktualisierungen des Status über stdout liefern. Einfacher IPC ist über stdin.do möglich, verwenden Sie dieses Modul nicht einfach, um die Ausgabe eines anderen Prozesses zu sammeln. Dafür ist es viel einfacher :: perl :: processstream qw (: alles); EVT_WXP_PROCESS_STREAM_STDOUT ($ SELBST, \ EVT_PROCESS_STDOUT); EVT_WXP_PROCESS_STREAM_STDERR ($ self, \ evt_process_stderr); Evt_wxp_process_stream_exit ($ self, \ evt_process_exit); EVT_WXP_PROCESS_STREAM_MAXLINES ($ SELBST, \ EVT_PROCESS_MAXLINES); mein $ proc1 = wx :: perl :: processstream :: process-> neu ("perl -e" drucken QQ ($ _ \ n) für (@inc); "',' myName1 ', $ selbst); $ proc1-> run; My $ Command = 'Executable.exe parm1 parm2 parm3' my $ proc2 = wx :: perl :: processstream :: process-> neu ($ command, 'myName2', $ selbst) -> run; meine @args = qw (ausführbar.exe parm1 parm2 parm3); mein $ proc3 = wx :: perl :: processstream :: process-> neu (\ @ @ args, 'myName2', $ selbst); $ proc3-> run; mein $ proc4 = wx :: perl :: processstream :: process-> neu (\ @ @ args, 'myName2', $ selbst, 'readline') -> run; mein $ proc5 = wx :: perl :: processstream :: process-> neu (\ @ args, 'myName2', $ selbst); SUB EVT_PROCESS_STDOUT {MY ($ self, $ Event) = @_; $ Event-> Spring (1); mein $ prozess = $ Event-> Getprozess; meine $ line = $ Event-> Getline; if ($ Line EQ 'etwas, auf das wir warten') {$ process-> writepräcess ('eine Nachricht an stdin'); $ prozess-> calwinet () if ($ dabeiwriting); } ............ # zum löschen Puffer My @buffers = @ {$ process-> getsttoutbuffer}; } sub evt_process_stderr {mein ($ self, $ Event) = @_; $ Event-> Spring (1); mein $ prozess = $ Event-> Getprozess; meine $ line = $ Event-> Getline; drucken stderr qq ($ line \ n); # Zum Löschen von Puffer My @Ersrors = @ {$ process-> getstypbuffer}; } sub evt_process_exit {mein ($ self, $ Event) = @_; $ Event-> Spring (1); mein $ prozess = $ Event-> Getprozess; meine $ line = $ Event-> Getline; meine @buffers = @ {$ process-> getststdoutbuffer}; my @Ersrors = @ {$ process-> getstypderuffer}; mein $ exitcode = $ prozess-> gotexitcode; ............ $ prozess-> zerstören; } SUB EVT_PROCESS_MAXLINES {MY ($ self, $ Event) = @_; mein $ prozess = $ Event-> Getprozess; ..... BAD-Prozess $ prozess-> töten; } Die Homepage des Produkts


WX :: perl :: processstream Zugehörige Software