Stream.Dispose Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Libère toutes les ressources utilisées par l’objet Stream .
Surcharges
| Nom | Description |
|---|---|
| Dispose() |
Libère toutes les ressources utilisées par le Stream. |
| Dispose(Boolean) |
Libère les ressources non managées utilisées par les Stream ressources gérées et libère éventuellement les ressources managées. |
Dispose()
Libère toutes les ressources utilisées par le 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 les modifications apportées au magasin de stockage et en fermant le flux pour libérer des ressources.
L’appel Dispose permet aux ressources utilisées par la Stream réaffectation à 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 de votre objet de flux dans Dispose(Boolean). Ne remplacez Close()pas .
Notez que, en raison des exigences de compatibilité descendante, l’implémentation de cette méthode diffère des instructions recommandées pour le modèle Dispose. Cette méthode appelle Close()ensuite Dispose(Boolean).
S’applique à
Dispose(Boolean)
Libère les ressources non managées utilisées par les Stream ressources gérées 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. Quand disposing c’est truele cas, 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 lorsqu’il est appelé à 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 à SafeHandle cet effet.
Cette méthode est appelée par la méthode publique Dispose() et la Finalize() méthode, si elle a été remplacée.
Dispose() appelle la méthode protégée Dispose avec le disposing paramètre défini sur true.
Finalize appelle avec Disposedisposing la valeur false.
Notes pour les héritiers
Dans les classes dérivées, ne remplacez pas la Close() méthode, à la place, placez toute la logique de nettoyage Stream dans la Dispose(Boolean) méthode.
Dispose() peut être appelé plusieurs fois par d’autres objets. En cas de Dispose(Boolean)substitution, veillez à ne pas référencer les objets précédemment supprimés dans un appel antérieur à Dispose(). Pour plus d’informations sur l’implémentation 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.