Stream.Dispose Méthode

Définition

Libère toutes les ressources utilisées par l'objet Stream.

Surcharges

Dispose()

Libère toutes les ressources utilisées par Stream.

Dispose(Boolean)

Libère les ressources non managées utilisées par Stream et libère éventuellement les ressources managées.

Dispose()

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

L’appel de Dispose permet la réallocation des ressources utilisées par le Stream à d’autres fins. Pour plus d’informations sur Dispose , consultez nettoyage des ressources non managées.

Notes pour les héritiers

Placez toute la logique de nettoyage pour votre objet de flux dans Dispose(Boolean) . Ne substituez pas 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. Cette méthode appelle Close() , qui appelle ensuite Dispose(Boolean) .

S’applique à

Dispose(Boolean)

Libère les ressources non managées utilisées par Stream et libère éventuellement les ressources managées.

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

true pour libérer les ressources managées et non managées ; false pour libérer uniquement les ressources non managées.

Remarques

Vous devez libérer toutes les ressources en spécifiant true pour disposing . Lorsque disposing a true la 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. 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.

Si votre flux utilise un handle de système d’exploitation pour communiquer avec sa source, envisagez d’utiliser une sous-classe de SafeHandle à cet effet.

Cette méthode est appelée par la Dispose méthode publique et la Finalize méthode. Dispose appelle la méthode protégée Dispose avec le paramètre ayant la disposing valeur true . Finalize appelle Dispose avec disposing défini sur false .

Notes pour les héritiers

Dans les classes dérivées, ne substituez pas la Close() méthode, mais Placez toute la logique de nettoyage de flux dans la Dispose(Boolean) méthode.

Dispose() peut être appelée plusieurs fois par d'autres objets. 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(). Pour plus d’informations sur l’implémentation de Dispose(Boolean) , consultez implémentation d’une méthode dispose.

Pour plus d’informations sur Dispose() et Finalize() , consultez nettoyage des ressources non managées.

S’applique à