Lar Desenvolvimento O que é um bloco finalmente em c? - o que é techopedia

O que é um bloco finalmente em c? - o que é techopedia

Índice:

Anonim

Definição - O que Finalmente Bloqueia significa?

Um bloco finalmente, no contexto de C #, refere-se a um bloco de instruções sempre executadas, independentemente de eventos inesperados ou exceções que possam ocorrer durante a execução de um aplicativo. É usado opcionalmente com o bloco "try / catch" e garante a execução de qualquer código que deve ser executado antes de sair do bloco "try", independentemente do sucesso ou falha da execução do aplicativo.


A execução de um bloco final tem como objetivo liberar recursos, como conexões com o banco de dados, que geralmente estão disponíveis em quantidades limitadas. Por esse mecanismo, o descarte de recursos ocorre antes da operação de finalização do coletor de lixo, otimizando a memória.

Techopedia explica Finalmente Bloquear

O código no bloco final pode ser empregado para manipular exceções assim que elas ocorrerem, limpar a memória alocada no bloco "try" ou descartar objetos contendo recursos externos (como identificadores de arquivo) usados ​​no bloco "try". Um bloco final também facilita o desempenho de tarefas de limpeza, como redefinir um cursor para um estado normal antes do horário de uma exceção.


Em geral, o código em um bloco finalmente é executado quando o controle sai de um bloco try como resultado da execução normal, como resultado da execução de uma instrução "break", "goto", "continue" ou "return" ou devido a uma exceção da instrução try.


Sempre que ocorre uma exceção no bloco try, o controle passa da linha que causou a exceção para o bloco catch mais próximo (manipulador de exceções) e depois para o bloco final. Além disso, quando uma exceção é retrocedida em um bloco catch, o controle é transferido para o bloco final. Portanto, o código que segue a linha em que a exceção ocorreu será ignorado.


Exceções não devem ser lançadas explicitamente em um bloco final. Se ocorrer uma exceção durante a execução de um bloco final, qualquer código após o ponto em que a exceção é lançada não será executado e a exceção será propagada para o bloco de teste externo. Se o bloco final já estiver manipulando outra exceção, isso resultará no encerramento do processamento da exceção atual.


Deve-se tomar cuidado para não transferir explicitamente a execução para dentro ou para fora de um bloco final, pois essa não é uma transferência válida.

Esta definição foi escrita no contexto de C #
O que é um bloco finalmente em c? - o que é techopedia