try-with-resource를 사용하자

2020-12-20

자바 라이브러리에는 close 메서드를 호출해서 자원을 직접 닫아줘야 하는 자원이 많다. 대표적으로 InputStream, OutputStream, java.sql.Connection 등이 좋은 예다. 그러나 자원 닫기는 개발자가 놓치기 쉬워서 예측할 수 없는 성능 문제로 이어진다. 그래서 이런 라이브러리 들은 안전망으로 finalizer를 활용해 닫히지 않는 자원을 닫을 수 있게 설계를 해놨지만, finalizer는 그리 믿을만하지 못하다.

Read More