AtExit.

atExit ist ein Perl-Modul, das die EXIT-Verarbeitung für ein Programm oder ein Objekt durchführen kann.
Jetzt downloaden

AtExit. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Andrew Langmead, Brad Appleton and Michael A. Chase
  • Website des Verlags:
  • http://search.cpan.org/~bradapp/AtExit-2.01/AtExit.pm

AtExit. Stichworte


AtExit. Beschreibung

Atexit ist ein Perl-Modul, das die EXIT-Verarbeitung für ein Programm oder ein Objekt durchführen kann. Atexit ist ein Perl-Modul, das die EXIT-Verarbeitung für ein Programm oder Objekt durchführen kann. Synopsis verwenden ATEXIT; Sub Cleanup {my @args = @_; drucken "Cleanup () Ausführen: Args = @argsn"; . drucken "Erster Anruf an atExit () zurückgegeben $ _n"; $ _ = Atexit ("Cleanup", "Dieser Anruf wurde zweitrangig angemeldet"); drucken "zweiter Anruf auf atexit () zurückgegeben $ _n"; $ _ = Atexit ("Cleanup", "Dieser Anruf sollte von RMEXIT nicht registriert sein"); RMEXIT ($ _) oder Warn "konnte nicht unvorhersagen EXIT-SUB $ _!"; if (@argv == 0) {## registrieren Unterprogramme, die aufgerufen werden sollen, wenn dieser lexikalische Geltungsbereich meine $ Scope1 = Atexit-> NEU (Cleanup, "Scope 1, Callback 1") verlassen wird; {## Machen Sie dasselbe für diesen verschachtelten Geltungsbereich My $ Scope2 = ATEXIT-> NEU; $ _ = $ scope2-> atexit (Cleanup, "Scope 2, Callback 1"); $ Scope1-> atexit (Cleanup, "Scope 1, Callback 2"); $ scope2-> atexit (Cleanup, "Scope 2, Callback 2"); $ scope2-> rmexit ($ _) oder warn "konnte nicht abschließen EXIT-SUB $ _!"; drucken "*** scope 2 *** n"; } drucken "*** abgeschlossenes Scope 2 *** n"; drucken "*** den Umfang 1 *** n"; } drucken "*** Fertigspielraum 1 *** n" if (@argv == 0); Ende {drucken "*** Nun, die Program-Exit-Verarbeitung *** n"; } Das Atexit-Modul stellt eine ATSI-C-Beendigungsverarbeitung auf, die nach der Atexit-Funktion in der Standard-C-Bibliothek modelliert ist (siehe Atexit (3C)). Verschiedene Exit-Verarbeitungsroutinen können durch Anruf von Atexit registriert und das gewünschte Subroutin zusammen mit beliebigen Argumenten übergeben. Bei der Programmübertragungszeit werden die mit Atexit registrierten Unterprogramme mit ihren gegebenen Argumenten in umgekehrter Reihenfolge der Registrierung aufgerufen (Lasta registriert wird zuerst aufgerufen). Registrieren derselben Subroutine mehr als einmal wird dazu führen, dass die Subroutine für jede Registrierung einmal aufgerufen werden soll. Ein atExit-Objekt kann in jedem Umfang erstellt werden. Bei der Berufung als Funktion registriert ATEXIT CALLBACKS, die bei der Programmübertragungszeit ausgeführt werden sollen. Wenn jedoch als Object-Methode aufgerufen wird (mithilfe der $ Object-> Method_name-Syntax), werden Callbacks, die mit einem Atexit-Objekt registriert sind, zu Objektzerstörungszeit ausgeführt! Die Regeln für die Anordnung der Ausführung der registrierten Unterprogramme sind für Objekte während der Objektzerstörung gleichermaßen für Objekte, wie für das Programm während der Programmabschlüsse.Die Atexit-Funktion / -methode sollte einen Subroutine-Namen oder -Regel übergeben werden, gegebenenfalls von der Liste der Argumente gefolgt von der Liste der Argumente mit dem Sie es bei Programm- / Objekt-Exit-Zeit aufrufen. Anonyme Subroutine-Referenzen, die an ATEXIT-Tat als "Verschlüsse" (die in Perlref beschrieben sind, weitergegeben. Wenn ein Subroutine-Name angegeben ist (im Gegensatz zu einer Subroutine-Referenz), sofern der Subroutine-Name nicht ein expliziter PACKE-Präfix aufweist, wird angenommen, dass es der Name eines Subroutine im aktuellen Paket des Anrufers ist. Ein Bezug auf die angegebene Subroutine wird erhalten, und wenn Aufrufargumente angegeben wurden, ist es in einem Verschluss "eingewickelt", der die Subroutine mit den angegebenen Argumenten auftrifft. Die resultierende Subroutin-Referenz wird an die Vorderseite der Liste der Exit-Handling-Subroutinen für das Programm (ATEXIT) oder das Atexit-Objekt ($ EXITObject-> ATEXIT) hinzugefügt, und die Referenz wird dann an den Anrufer zurückgegeben (nur für den Fall, dass Sie möchten Um es später mit Rmexit zu registrieren. Wenn die gegebene Subroutine nicht registriert werden konnte, wird der Wert Null zurückgegeben. Die RMEXIT-Funktion / -methode sollte ein oder mehrere Subroutine-Referenzen übergeben werden, von denen jeder von einem vorherigen Anruf an ATEXIT zurückgegeben wurde. Zum Jede gegebene Argument, RMEXIT wird in der Liste der Exit-Handling-Subroutinen für das Programm (RMEXIT) oder das Atexit-Objekt ($ EXITObject-> RMEXIT) angesehen und entfernen Sie den ersten anpassenden Eintrag aus der Liste. Wenn keine Argumente angegeben sind, dann alle Programm oder Objektexit-Handler sind nicht registriert! Der zurückgegebene Wert ist die Anzahl der Subroutine, die erfolgreich nicht registriert wurden IT-Objekt und ruft jeweils wiederum auf (jede Subroutine wird sofort von der Vorderseite der Warteschlange entfernt, bevor er aufgerufen wird). Bei der Programm-Exit-Zeit ist der Ende {} -Block im Atexit-Modul über die Unterprogramme in dem von dem EXIT_subs-Verfahren zurückgegebenen Array iteriert und ruft jeweils wiederum auf (jede Subroutine wird sofort von der Vorderseite der Warteschlange entfernt, bevor er aufgerufen wird) . Beachten Sie, dass in beiden Fällen (Programmausgang und Objektzerstörung) die Unterprogramme in dieser Warteschlange in der Erstletzten aufgerufen werden (umgekehrte Reihenfolge, in der sie mit Atexit registriert waren). Anforderungen: · Perl.


AtExit. Zugehörige Software

Tangram

Tangram ist ein einfaches Perl-Modul, das reine Objekte in standardmäßigen relationalen Datenbanken speichern kann. ...

201

Herunterladen

Geo :: ECEF.

GEO :: ECEF ist ein Perl-Modul, das zwischen ECEF-Koordinaten und Breitengrad, Längengrad und Höhe über Ellipsoide umgewandelt wird. ...

316

Herunterladen