全部をcatchせずにcloseするか判断するところまでthrowして、
そこでcatchしたらfinally内でcloseの方がすっきりしそう。
ライブラリやAPIの類が例外だしたらインスタンスの再利用はできないことが多いしw