Thread FastCGI/FCGI - Error-Routine (20 answers)
Opened by Froschpopo at 2012-03-12 15:58

rosti
 2012-03-13 07:58
#156809 #156809
User since
2011-03-19
3193 Artikel
BenutzerIn
[Homepage]
user image
Quote
Ist das nicht kontra-performant?


Kleine Ergänzung zu pq: Der Code, welcher im eval{} Block geprüft wird, ist bereits compiliert im Hauptspeicher. UNIVERSAL::can legt diesen Code nur um auf eine anonyme Referenz.

Auf diese Art und Weise kannst Du in jeder Methode völlig ungeniert (*G*) mit die() arbeiten und Kontrollstrukturen 'abkürzen'. Beispiel:
http://handwerkzeugs.de/kalender/datediff.html
eine Fehlerbehandlung (unkorrekte Eingabe Datum) erfolgt per die("Fehler: \n") wobei infolge "\n" am Ende der Backtrace unterdrückt wird.

Andere Fehler, für den Entwickler bestimmt, gebe ich mit Carp::croak aus, hierbei wird ein Backtrace nicht unterdrückt.

Und noch einen Schritt weiter:
Code (perl): (dl )
1
2
3
$SIG{__WARN__} = sub{
        die "Warnung: @_";
};


global gesetzt, erhebt jede Warnung in den Status einer Exception und hilft ungemein beim Entwickeln, so wird nichts mehr übersehen und der Blick ins Error_Log erübrigt sich ;)

Viele Grüße,
Rosti

View full thread FastCGI/FCGI - Error-Routine