Stream.Dispose Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rilascia tutte le risorse usate dall'oggetto Stream.
Overload
Dispose() |
Rilascia tutte le risorse usate da Stream. |
Dispose(Boolean) |
Rilascia le risorse non gestite usate da Stream e, facoltativamente, le risorse gestite. |
Dispose()
- Origine:
- Stream.cs
- Origine:
- Stream.cs
- Origine:
- Stream.cs
Rilascia tutte le risorse usate da Stream.
public:
virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()
Implementazioni
Commenti
Questo metodo elimina il flusso scrivendo tutte le modifiche apportate all'archivio di backup e chiudendo il flusso per rilasciare le risorse.
La chiamata Dispose
consente di riallocare le risorse usate da Stream per altri scopi. Per altre informazioni su Dispose
, vedere Pulizia delle risorse non gestite.
Note per gli eredi
Inserire tutta la logica di pulizia per l'oggetto flusso in Dispose(Boolean). Non eseguire l'override di Close().
Si noti che a causa dei requisiti di compatibilità con le versioni precedenti, l'implementazione di questo metodo è diversa dalle indicazioni consigliate per il modello Dispose. Questo metodo chiama Close(), che chiama Dispose(Boolean)quindi .
Si applica a
Dispose(Boolean)
- Origine:
- Stream.cs
- Origine:
- Stream.cs
- Origine:
- Stream.cs
Rilascia le risorse non gestite usate da Stream e, facoltativamente, le risorse gestite.
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)
Parametri
- disposing
- Boolean
true
per rilasciare sia le risorse gestite sia quelle non gestite; false
per rilasciare solo le risorse non gestite.
Commenti
È consigliabile rilasciare tutte le risorse specificando true
per disposing
. Quando disposing
è true
, il flusso può anche garantire che i dati vengano scaricati nel buffer sottostante e acceda ad altri oggetti finalizzabili. Questo potrebbe non essere possibile quando viene chiamato da un finalizzatore a causa di una mancanza di ordinamento tra finalizzatori.
Se il flusso usa un handle del sistema operativo per comunicare con l'origine, è consigliabile usare una sottoclasse di SafeHandle per questo scopo.
Questo metodo viene chiamato dal metodo public Dispose() e dal Finalize() metodo , se è stato sottoposto a override. Dispose() richiama il metodo protetto Dispose con il disposing
parametro impostato su true
. Finalize
richiama Dispose con disposing
impostato su false
.
Note per gli eredi
Nelle classi derivate non eseguire l'override del Close() metodo , inserire invece tutte le Stream logica di pulizia nel Dispose(Boolean) metodo .
Il metodo Dispose() può essere chiamato più volte da altri oggetti. In caso di override di Dispose(Boolean), non fare riferimento a oggetti già eliminati in una chiamata precedente a Dispose(). Per altre informazioni su come implementare , vedere Implementazione Dispose(Boolean)di un metodo Dispose.
Per altre informazioni su Dispose() e Finalize(), vedere Pulizia delle risorse non gestite.