É significativo para o método close do AutoCloseable lançar uma exceção? Como isso deve ser tratado?
Em c #, éconsiderado ruimprática para lançar exceções noDispose
método de umIDisposable
.
Por outro lado, em java, oclose
método deAutoCloseable
permite que qualquer exceção seja lançada e força o chamador a lidar com isso de alguma forma. Mas o que o chamador deve fazer razoavelmente se isso acontecer? Isso sugere que a tentativa de fechar o recurso falhou de alguma forma. Então, o usuário precisa tentar fechar o recurso novamente antes de continuar, talvez com algum tipo de recuo exponencial?