IAsyncDisposable Interfész

Definíció

A nem felügyelt erőforrások aszinkron felszabadítási mechanizmusát biztosítja.

public interface class IAsyncDisposable
public interface IAsyncDisposable
type IAsyncDisposable = interface
Public Interface IAsyncDisposable
Származtatott

Megjegyzések

A .NET-ben a nem felügyelt erőforrásokat tartalmazó osztályok általában implementálják az IDisposable interfészt, hogy szinkron módon oldják fel a nem felügyelt erőforrásokat. Bizonyos esetekben azonban a szinkron helyett (vagy helyett) aszinkron mechanizmust kell biztosítaniuk a nem felügyelt erőforrások felszabadításához. Az ilyen mechanizmus lehetővé teszi a fogyasztó számára, hogy erőforrás-igényes ártalmatlanítási műveleteket hajtson végre anélkül, hogy hosszú ideig blokkolnák a grafikus felhasználói felületű alkalmazások fő szálát.

Ennek az interfésznek a IAsyncDisposable.DisposeAsync metódusa egy ValueTask értéket ad vissza, amely az aszinkron eltávolítási műveletet képviseli. A nem felügyelt erőforrásokat tartalmazó osztályok implementálják ezt a módszert, és az osztályok felhasználója meghívja ezt a metódust egy objektumra, amikor már nincs rá szükség.

Az aszinkron metódusok a C# és async a await Visual Basic kulcsszavaival együtt használatosak. További információ: A feladat aszinkron programozási modellje C# vagyAszinkron programozás Async és Await használatával (Visual Basic).

Az IAsyncDisposable-t implementáló objektum használata

Ha az alkalmazás olyan IAsyncDisposable-t implementáló objektumot használ, a használat befejezésekor meg kell hívnia az objektum DisposeAsync implementációját. Annak érdekében, hogy az erőforrások kivétel esetén is felszabaduljanak, helyezze az objektumot használó IAsyncDisposable kódot a használati utasításba (a 8.0-s verziótól kezdve C#-ban), vagy hívja meg a DisposeAsync metódust az finallytry/ utasítás záradékában.finally A mintával kapcsolatos további információkért lásd: try/finallytry-finally (C#) vagy Try... Catch... Finally utasítás (Visual Basic).

IAsyncDisposable implementálása

A következő helyzetekben implementálhatja IAsyncDisposable a következőket:

A metódussal elvégezheti a DisposeAsync nem felügyelt erőforrások használata után szükséges tisztítást, például a nem felügyelt erőforrások felszabadítását, felszabadítását vagy alaphelyzetbe állítását. További információ: DisposeAsync metódus implementálása.

Metódusok

Name Description
DisposeAsync()

A nem felügyelt erőforrások aszinkron felszabadításával, felszabadításával vagy alaphelyzetbe állításával kapcsolatos alkalmazásalapú feladatokat hajt végre.

Bővítő metódusok

Name Description
ConfigureAwait(IAsyncDisposable, Boolean)

Konfigurálja, hogy az aszinkron eldobható feladatok hogyan lesznek végrehajtva.

A következőre érvényes: