IMemoryOwner<T> Interfaccia
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.
Identifica il proprietario di un blocco di memoria che è responsabile della corretta eliminazione delle memoria sottostante.
generic <typename T>
public interface class IMemoryOwner : IDisposable
public interface IMemoryOwner<T> : IDisposable
type IMemoryOwner<'T> = interface
interface IDisposable
Public Interface IMemoryOwner(Of T)
Implements IDisposable
- T
Tipo di elementi da archiviare in memoria.
- Derivato
- Implementazioni
L'interfaccia IMemoryOwner<T>
viene usata per definire il proprietario responsabile della gestione della durata di un Memory<T> buffer. Un'istanza dell'interfaccia IMemoryOwner<T>
viene restituita dal MemoryPool<T>.Rent metodo .
Anche se un buffer può avere più consumer, può avere un solo proprietario in qualsiasi momento. Il proprietario può:
Creare il buffer direttamente o chiamando un metodo factory.
Trasferire la proprietà a un altro consumer. In questo caso, il proprietario precedente non deve più usare il buffer.
Eliminare definitivamente il buffer quando non è più in uso.
Poiché l'oggetto IMemoryOwner<T>
implementa l'interfaccia IDisposable , è necessario chiamare il relativo Dispose metodo solo dopo che il buffer di memoria non è più necessario e l'utente lo ha eliminato definitivamente. Non è consigliabile eliminare l'oggetto IMemoryOwner<T>
mentre è disponibile un riferimento alla relativa memoria. Ciò significa che il tipo in cui IMemoryOwner<T>
è dichiarato non deve avere un Finalize metodo.
Memory |
Ottiene la memoria che appartiene al proprietario. |
Dispose() |
Esegue attività definite dall'applicazione, come rilasciare o reimpostare risorse non gestite. (Ereditato da IDisposable) |
Prodotto | Versioni |
---|---|
.NET | Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Standard | 2.1 |
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: