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

Définition

Libère toutes les ressources utilisées par l'objet Stream.Releases all resources used by the Stream object.

Surcharges

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

Libère toutes les ressources utilisées par Stream.Releases all resources used by the Stream.

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

Libère les ressources non managées utilisées par Stream et libère éventuellement les ressources managées.Releases the unmanaged resources used by the Stream and optionally releases the managed resources.

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

Libère toutes les ressources utilisées par 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 ()

Implémente

Remarques

Cette méthode supprime le flux, en écrivant toutes les modifications apportées au magasin de stockage et en fermant le flux pour libérer des ressources.This method disposes the stream, by writing any changes to the backing store and closing the stream to release resources.

L' Dispose appel de permet la réallocation Stream des ressources utilisées par le à d’autres fins.Calling Dispose allows the resources used by the Stream to be reallocated for other purposes. Pour plus d’informations Disposesur, consultez nettoyage des ressources non managées.For more information about Dispose, see Cleaning Up Unmanaged Resources.

Notes pour les héritiers

Placez toute la logique de nettoyage pour votre objet Dispose(Boolean)de flux dans.Place all cleanup logic for your stream object in Dispose(Boolean). Ne substituez Close()pas.Do not override Close().

Notez qu’en raison des exigences de compatibilité descendante, l’implémentation de cette méthode diffère de celle recommandée pour le modèle de suppression.Note that because of backward compatibility requirements, this method's implementation differs from the recommended guidance for the Dispose pattern. Cette méthode appelle Close(), qui appelle Dispose(Boolean)ensuite.This method calls Close(), which then calls Dispose(Boolean).

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

Libère les ressources non managées utilisées par Stream et libère éventuellement les ressources managées.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)

Paramètres

disposing
Boolean Boolean Boolean Boolean

true pour libérer les ressources managées et non managées ; false pour libérer uniquement les ressources non managées.true to release both managed and unmanaged resources; false to release only unmanaged resources.

Remarques

Vous devez libérer toutes les ressources en true spécifiant pour disposing.You should release all resources by specifying true for disposing. Lorsque disposing a truela valeur, le flux peut également s’assurer que les données sont vidées dans la mémoire tampon sous-jacente et accéder à d’autres objets finalisables.When disposing is true, the stream can also ensure data is flushed to the underlying buffer, and access other finalizable objects. Cela peut ne pas être possible quand elle est appelée à partir d’un finaliseur en raison d’un manque de classement parmi les finaliseurs.This may not be possible when called from a finalizer due a lack of ordering among finalizers.

Si votre flux utilise un handle de système d’exploitation pour communiquer avec sa source, envisagez d’utiliser SafeHandle une sous-classe de à cet effet.If your stream is using an operating system handle to communicate with its source, consider using a subclass of SafeHandle for this purpose.

Cette méthode est appelée par la méthode Dispose publique et la Finalize méthode.This method is called by the public Dispose method and the Finalize method. Disposeappelle la méthode protégée Dispose avec le paramètre disposing ayant la valeur true.Dispose invokes the protected Dispose method with the disposing parameter set to true. FinalizeDispose appelle avec disposing défini sur false.Finalize invokes Dispose with disposing set to false.

Notes pour les héritiers

Dans les classes dérivées, ne substituez Close() pas la méthode, mais Placez toute la logique de nettoyage de flux Dispose(Boolean) dans la méthode.In derived classes, do not override the Close() method, instead, put all of the Stream cleanup logic in the Dispose(Boolean) method.

Dispose() peut être appelée plusieurs fois par d'autres objets.Dispose() can be called multiple times by other objects. Lors de la substitution de Dispose(Boolean), veillez à ne pas référencer des objets qui ont été préalablement supprimés lors d'un appel précédent à Dispose().When overriding Dispose(Boolean), be careful not to reference objects that have been previously disposed of in an earlier call to Dispose(). Pour plus d’informations sur l' Dispose(Boolean)implémentation de, consultez implémentation d’une méthode dispose.For more information about how to implement Dispose(Boolean), see Implementing a Dispose Method.

Pour plus d’informations Dispose() sur Finalize()et, consultez nettoyage des ressources non managées.For more information about Dispose() and Finalize(), see Cleaning Up Unmanaged Resources.

S’applique à