Stream.Dispose Método

Definição

Liberta todos os recursos usados pelo Stream objeto.

Sobrecargas

Name Description
Dispose()

Liberta todos os recursos utilizados pelo Stream.

Dispose(Boolean)

Liberta os recursos não geridos usados pelo Stream e opcionalmente liberta os recursos geridos.

Dispose()

Liberta todos os recursos utilizados pelo Stream.

public:
 virtual void Dispose();
public void Dispose();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()

Implementações

Observações

Este método elimina o fluxo, escrevendo quaisquer alterações no armazenamento de suporte e fechando o fluxo para libertar recursos.

A chamada Dispose permite que os recursos usados pelo Stream sejam realocados para outros fins. Para mais informações sobre Dispose, consulte Limpeza de Recursos Não Geridos.

Notas para Herdeiros

Coloque toda a lógica de limpeza do seu objeto de stream em Dispose(Boolean). Não anule Close().

Note-se que, devido a requisitos de compatibilidade retroativa, a implementação deste método difere das orientações recomendadas para o padrão Disposter. Este método chama Close(), que depois chama Dispose(Boolean).

Aplica-se a

Dispose(Boolean)

Liberta os recursos não geridos usados pelo Stream e opcionalmente liberta os recursos geridos.

protected:
 virtual void Dispose(bool disposing);
protected virtual void Dispose(bool disposing);
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)

Parâmetros

disposing
Boolean

true libertar recursos geridos e não geridos; false libertar apenas recursos não geridos.

Observações

Deves libertar todos os recursos especificando true para disposing. Quando disposing é true, o fluxo pode também garantir que os dados são esvaziados para o buffer subjacente e aceder a outros objetos finalizáveis. Isto pode não ser possível quando chamado por um finalizador devido à falta de ordenação entre os finalizadores.

Se o seu stream estiver a usar um handle do sistema operativo para comunicar com a sua fonte, considere usar uma subclasse de SafeHandle para este propósito.

Este método é chamado pelo método público Dispose() e pelo Finalize() método, se tiver sido sobreposto. Dispose() invoca o método protegido Dispose com o disposing parâmetro definido como true. Finalize invoca Dispose com disposing definido para false.

Notas para Herdeiros

Nas classes derivadas, não sobrescrevas o Close() método, coloca toda a lógica de limpeza do Stream no Dispose(Boolean) método.

Dispose() pode ser chamada várias vezes por outros objetos. Ao sobrescrever Dispose(Boolean), tenha cuidado para não referenciar objetos que já foram eliminados anteriormente numa chamada anterior para Dispose(). Para mais informações sobre como implementar Dispose(Boolean), consulte Implementar um Método de Eliminação.

Para mais informações sobre Dispose() e Finalize(), consulte Limpeza de Recursos Não Geridos.

Aplica-se a