Имеет ли смысл метод close AutoCloseable для создания исключения? Как это должно быть обработано?
В C # этосчитается плохойпрактика бросать исключения вDispose
методIDisposable
.
Напротив, в Javaclose
методAutoCloseable
допускает любое исключение и заставляет вызывающего пользователя как-то с ним справиться. Но что разумно ожидать от звонящего, если это произойдет? Это говорит о том, что попытка закрыть ресурс как-то не удалась. Так должен ли пользователь снова пытаться закрыть ресурс, прежде чем продолжить, возможно, с каким-то экспоненциальным откатом?