ENDサブルーチン
ENDサブルーチンは、BEGINサブルーチンがプログラム開始時(コンパイル時)に実行されの対し、プログラム終了時に実行される。
END サブルーチンは、スクリプト終了前に自動的に呼び出されます。このことから、END サブルーチンは終了処理に向いています。END サブルーチンは、 die で終了した場合でも呼び出されますが、異常終了したときなどは実行されないので、注意してください。
http://www.rfs.jp/sb/perl/04/01.html#ENDサブルーチン
基本的には、プログラムが終了するとファイルハンドルやオブジェクトインスタンスは開放されるので、ENDルーチンあまり必要がないと思うんだけど、とりあえず。