O manipulador de terminação é utilizado para controlar a terminação de um escopo de execução. A terminação de um escopo de execução acontece se um escopo ou processo que o envolve tiver falhas.
Quando uma falha é lançada dentro de um escopo ou processo, um manipulador de falhas associado com o escopo ou processo deve ser executado, mas antes disto todas as atividades em execução dentro do escopo ou processo defeituoso devem ser terminadas. Se um escopo ou processo defeituoso tiver quaisquer escopos embutidos que ainda estão em execução, eles também devem ser terminados. A terminação de um escopo significa a terminação das atividades dentro dele e a execução do manipulador de terminação associado com o escopo.
Observe que um escopo pode ser terminado somente se, no caso de execução normal, está executando seu manipulador de compensação ou manipulador de terminação. Um escopo concluído, assim como um escopo que está defeituoso ou está executando seus manipuladores de falhas, não pode ser terminado.
Um manipulador de terminação é um contêiner para as atividades que serão realizadas no caso de um escopo ser terminado. Você pode adicionar um manipulador de terminação para um escopo.
Se uma falha ocorre dentro do manipulador de terminação de um escopo, a falha não é propagada para o escopo que o envolve.
Para adicionar um Manipulador de terminação aos elementos Escopo ou Processo: