Este es un seguimiento de "How can I get around a ‘die’ call in a Perl library I can’t modify?".¿Cómo manejo errores atrapados y no detectados en una subrutina de Perl?
Tengo una subrutina que llama Biblioteca-Que-Se bloquea-A veces muchas veces. En lugar de sofá cada llamada dentro de este subprograma con una eval {}, acabo de dejar que se muera, y el uso de un eval {} en el nivel que me llama la subrutina:
my $status=eval{function($param);};
unless($status){print [email protected]; next;}; # print error and go to
# next file if function() fails
Sin embargo, hay condiciones de error que me puede y atrapa en función(). ¿Cuál es la forma más adecuada/elegante de diseñar la captura de errores en la subrutina y la rutina de llamadas para que obtenga el comportamiento correcto para los errores detectados y no detectados?
¡Sus corchetes se ven espectaculares! +1 – Axeman
Bueno, los he pulido esta mañana. –