END

ENDは、Perlの終了前に実行される。
dieなどの強制終了でも呼ばれる。

初期処理、終了処理を定義する方法[Perl] : バヤシタ

CustomModule.pmで、

END、そしてerror_funcを用意。
error_funcの中で、dieを呼んでるが、その後に"error after!"と出力している。

#!/usr/bin/perl

# CustomModuleをuseで読み込む.
use CustomModule;

これだけでも、

$ vi END.pl
$ perl END.pl
This is BEGIN.
This is END.
$

ENDが呼ばれる。

error_funcを呼ぶと、

$ vi END.pl
$ perl END.pl
This is BEGIN.
error_func.
error!
This is END.
$

dieで強制終了するので、"error after!"は出力されない。
しかし、ENDは呼ばれる。

Sample/perl/END/END/src/END at master · bg1bgst333/Sample · GitHub