1
resposta

Uso do "using" e try/catch

Boa tarde a todos.

Eu entendi o uso do using e seu papel de substituir o try/finally. Porém, durante a exceução dos exercícios fiquei com as seguintes dúvidas:

  • Se eu tento utilizar o using e ele dá um erro de FileNotFoundException, que por sinal acaba sendo o erro que dá durante a realização do exercício, como eu trato esta exceção dentro do código using sem usar um "novo" try, já que a inserção de um catch necessáriamente precisa vir acompanhada de um try?

  • Ainda nessa ideia e lendo os outros questionamentos do fórum, entendi que o uso do "using" é bastante aplicado na parte de leitura de arquivos ou acesso a servidores, por exemplo. Nesse sentido, como que as perdas de conexão ou erro de leitura de arquivo normalmente são tratadas? É feito um try/catch dentro do bloco using?

  • Para fechar, durante a realização do exercício, notei que usando o "using" E com o "throw new IOException();", do método "LerProximaLinha", da classe LeitorDeArquivo ativado, o método Dispose(), que deveria ser executado como parte do operador "using" não foi executado mesmo a referência não sendo nula. Esta correto ou o finally deveria ser executado de alguma forma?!

![](Print Screen da tela da aplicação, mostrando que a string "Fechando Arquivo" não foi executada )

1 resposta

O uso do Using implementa o tratamento de todos as possiveis falhas que ocorrem durante o processo, Por exemplo: usando a conexão de uma instancia em nuvem e ocorre uma queda de conexão, o processo e interrompido e o using trata a exceção e finaliza a tentativa de execução do File.Open.

Espero ter ajudado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software