Diferença entre o método de destruição, eliminação e finalização

Eu estou estudando como coletor de lixo funciona em c #. Estou confuso com o uso deDestructor, Dispose eFinalize métodos.

De acordo com minhas pesquisas e entendimentos, ter um método Destructor dentro da minha classe dirá ao coletor de lixo para executar a coleta de lixo da maneira mencionada no método do destruidor, que não pode ser chamado explicitamente nas instâncias da classe.

oDispose método destina-se a fornecer o usuário para controlar a coleta de lixo. oFinalize método libera os recursos usados ​​pela classe, mas não o objeto em si.

Não tenho certeza se entendi o caminho certo. Por favor, esclareça as dúvidas. Quaisquer links ou guias adicionais são bem-vindos.

questionAnswers(2)

yourAnswerToTheQuestion