Thread Erfahrung mit SpeedyCGI (19 answers)
Opened by marky at 2011-06-16 18:26

topeg
 2011-07-21 12:45
#150643 #150643
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
2011-07-21T10:13:25 roooot
Ich habe mal etwas Zeit mit ExceptionHandling in Perl verbracht, cpan durchsucht.
Welche try-catch Lösung verwendet denn nicht eval?
Du musst "Block-eval" (eval{ ... }) von "String-eval" (eval('...')) unterscheiden das erste verhält sich wie "try" in anderen Sprachen. Es wird keine Interpreterinstanz gestartet. Nur "die" wird dort abgefangen, was einem "throw" entspricht.
Nur wenn du ein das zweite eval benutzt wird eine neue Interpreterinstanz gestartet und alle Variablen in den neuen Speicherraum kopiert und nach dem eval wenn nötig zurück geschrieben.
Ich verstehe deine Befürchtungen nicht was eval betrifft. Der Code wird weder langsamer noch wird der Speicherverbrauch signifikant vergrößert, wenn man ein Block-eval benutzt.

2011-07-21T10:13:25 roooot
Deine Lösung ist natürlich trotzdem nett. CPAN:Devel::StackTrace gibt allerdings etwas ähnliches aus
Das war auch nur als Demonstration gedacht. Ich schrieb ja dass es bessere Module dafür gibt.

View full thread Erfahrung mit SpeedyCGI