Stream.Dispose Stream.Dispose Stream.Dispose Stream.Dispose Method

Definição

Libera todos os recursos usados pelo objeto Stream.Releases all resources used by the Stream object.

Sobrecargas

Dispose() Dispose() Dispose() Dispose()

Libera todos os recursos usados pelo Stream.Releases all resources used by the Stream.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libera os recursos não gerenciados usados pelo Stream e opcionalmente libera os recursos gerenciados.Releases the unmanaged resources used by the Stream and optionally releases the managed resources.

Dispose() Dispose() Dispose() Dispose()

Libera todos os recursos usados pelo Stream.Releases all resources used by the Stream.

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

Implementações

Comentários

Esse método descarta o fluxo, gravando todas as alterações ao repositório de backup e fechar o fluxo para liberar recursos.This method disposes the stream, by writing any changes to the backing store and closing the stream to release resources.

Chamando Dispose permite que os recursos usados pelo Stream para ser realocados para outras finalidades.Calling Dispose allows the resources used by the Stream to be reallocated for other purposes. Para obter mais informações sobre Dispose, consulte limpeza de recursos não gerenciados.For more information about Dispose, see Cleaning Up Unmanaged Resources.

Notas aos Herdeiros

Coloque toda lógica de limpeza para seu objeto de fluxo em Dispose(Boolean).Place all cleanup logic for your stream object in Dispose(Boolean). Não substituir Close().Do not override Close().

Observe que devido aos requisitos de compatibilidade com versões anteriores, implementação desse método é diferente do que a orientação recomendada para o padrão de descarte.Note that because of backward compatibility requirements, this method's implementation differs from the recommended guidance for the Dispose pattern. Este método chama Close(), que chama Dispose(Boolean).This method calls Close(), which then calls Dispose(Boolean).

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libera os recursos não gerenciados usados pelo Stream e opcionalmente libera os recursos gerenciados.Releases the unmanaged resources used by the Stream and optionally releases the managed resources.

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 Boolean Boolean Boolean

true para liberar recursos gerenciados e não gerenciados; false para liberar apenas recursos não gerenciados.true to release both managed and unmanaged resources; false to release only unmanaged resources.

Comentários

Você deve liberar todos os recursos, especificando true para disposing.You should release all resources by specifying true for disposing. Quando disposing é true, o fluxo também pode garantir dados seja liberados para o buffer subjacente e acessarem outros objetos finalizáveis.When disposing is true, the stream can also ensure data is flushed to the underlying buffer, and access other finalizable objects. Isso talvez não seja possível quando chamado de um finalizador devido à falta de ordenação entre os finalizadores.This may not be possible when called from a finalizer due a lack of ordering among finalizers.

Se seu fluxo está usando um identificador de sistema operacional para se comunicar com sua fonte, considere o uso de uma subclasse de SafeHandle para essa finalidade.If your stream is using an operating system handle to communicate with its source, consider using a subclass of SafeHandle for this purpose.

Este método é chamado pelo método público Dispose e pelo método Finalize.This method is called by the public Dispose method and the Finalize method. Dispose invoca o método Dispose protegido com o parâmetro disposing definido como true.Dispose invokes the protected Dispose method with the disposing parameter set to true. Finalize invoca Dispose com disposing definido como false.Finalize invokes Dispose with disposing set to false.

Notas aos Herdeiros

Em classes derivadas, não substituem o Close() método, em vez disso, colocar toda a lógica de limpeza do Stream no Dispose(Boolean) método.In derived classes, do not override the Close() method, instead, put all of the Stream cleanup logic in the Dispose(Boolean) method.

Dispose() pode ser chamado várias vezes por outros objetos.Dispose() can be called multiple times by other objects. Ao substituir Dispose(Boolean), tome cuidado para não referenciar objetos que tenham sido descartados anteriormente em uma chamada anterior para Dispose().When overriding Dispose(Boolean), be careful not to reference objects that have been previously disposed of in an earlier call to Dispose(). Para obter mais informações sobre como implementar Dispose(Boolean), consulte implementando um método Dispose.For more information about how to implement Dispose(Boolean), see Implementing a Dispose Method.

Para obter mais informações sobre Dispose() e Finalize(), consulte limpeza de recursos não gerenciados.For more information about Dispose() and Finalize(), see Cleaning Up Unmanaged Resources.

Aplica-se a