Você está na página 1de 3

28/03/2023 15:16 Component.Dispose Método (System.

ComponentModel) | Microsoft Learn

Component.Dispose Método
Referência

Definição
Namespace: System.ComponentModel
Assembly: System.ComponentModel.Primitives.dll

Libera os recursos usados pelo Component.

Sobrecargas
Dispose() Libera todos os recursos usados pelo Component.

Dispose(Boolean) Libera os recursos não gerenciados usados pelo Component e


opcionalmente libera os recursos gerenciados.

Dispose()
Libera todos os recursos usados pelo Component.

C#

public void Dispose ();

Implementações
Dispose()

Comentários
Chame Dispose quando terminar de usar o Component. O Dispose método deixa o
Component em um estado inutilizável. Depois de chamar Dispose, você deve liberar
todas as referências para o Component para que o coletor de lixo possa recuperar a
memória que o Component estava ocupando. Para obter mais informações, consulte
Limpando recursos não gerenciados e Implementando um método dispose.

7 Observação
https://learn.microsoft.com/pt-br/dotnet/api/system.componentmodel.component.dispose?view=net-7.0#system-componentmodel-component-dis… 1/3
28/03/2023 15:16 Component.Dispose Método (System.ComponentModel) | Microsoft Learn

Sempre chame Dispose antes de liberar sua última referência para o


Component. Caso contrário, os recursos que ele está usando não serão
liberados até que o coletor de lixo chame o Component método do Finalize
objeto.

Confira também
IContainer
Container

Aplica-se a
.NET 8 e outras versões

Produto Versões

.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8

.NET 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8,
Framework 4.8.1

.NET Standard 2.0, 2.1

Xamarin.iOS 10.8

Xamarin.Mac 3.0

Dispose(Boolean)
Libera os recursos não gerenciados usados pelo Component e opcionalmente libera
os recursos gerenciados.

C#

protected virtual void Dispose (bool disposing);

Parâmetros
disposing Boolean
true para liberar recursos gerenciados e não gerenciados; false para liberar apenas

recursos não gerenciados.

https://learn.microsoft.com/pt-br/dotnet/api/system.componentmodel.component.dispose?view=net-7.0#system-componentmodel-component-dis… 2/3
28/03/2023 15:16 Component.Dispose Método (System.ComponentModel) | Microsoft Learn

Comentários
Esse método será chamado pelo método público Dispose() e pelo Finalize() método
, se ele tiver sido substituído. Dispose() invoca esse método com o disposing
parâmetro definido true como . Finalize invoca esse método com definido
false como disposing .

Quando o disposing parâmetro é true , esse método libera todos os recursos


mantidos por quaisquer objetos gerenciados referenciados por ele Component .
Este método invoca o método Dispose() de cada objeto referenciado.

Notas aos Herdeiros


Dispose pode ser chamado várias vezes por outros objetos. Ao substituir
Dispose(Boolean) , tome cuidado para não referenciar objetos que tenham sido

descartados anteriormente em uma chamada anterior para Dispose . Para obter mais
informações sobre como implementar Dispose(Boolean) , consulte Implementando
um método dispose.

Para obter mais informações sobre Dispose e Finalize(), consulte Limpando recursos
não gerenciados e Substituindo o método Finalize.

Aplica-se a
.NET 8 e outras versões

Produto Versões

.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8

.NET 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8,
Framework 4.8.1

.NET Standard 2.0, 2.1

Xamarin.iOS 10.8

Xamarin.Mac 3.0

https://learn.microsoft.com/pt-br/dotnet/api/system.componentmodel.component.dispose?view=net-7.0#system-componentmodel-component-dis… 3/3

Você também pode gostar