Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Duvida sobre o fechamento.

Qual a diferença do comando Application.Exit(); para Close();?

2 respostas
solução!

Olá Phederic, beleza?

Cara, vamos lá. Em linhas gerais, o this.Close() fecha o seu Form. O Aplication.Exit() retorna um código de erro. O método ideal deve ser o Application.Exit(). De acordo com a documentação, ele aguarda a finalização de todos as mensagens e laços, além de fechar todas as janelas executando o Form.OnClose().

O comando Environment.Exit() irá, somente, matar o processo. Se você tiver, por exemplo, modificações que não foram salvas, elas serão perdidas. Além disso, nenhuma conexão ou propriedade será finalizada corretamente.

O comando Form.Close() somente fecha o formulário. Se tiver algum outro Form aberto, ele não será finalizado.

É importante atender para o fato de que, em aplicações multithread, o Application.Exit() não irá finalizar as suas threads (elas continuarão executando, mesmo que o formulário seja finalizado). É necessário que você realize a gestão desses processos, para evitar vazamentos de memória.

Então no caso se eu tiver trabalhando com banco de dados relacional o mais ideal para eu fechar as minhas telas é o Close();? Valeu pela a explicação.

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