Stream.DisposeAsync 方法

定义

异步释放 Stream 使用的非托管资源。

public:
 virtual System::Threading::Tasks::ValueTask DisposeAsync();
public virtual System.Threading.Tasks.ValueTask DisposeAsync ();
abstract member DisposeAsync : unit -> System.Threading.Tasks.ValueTask
override this.DisposeAsync : unit -> System.Threading.Tasks.ValueTask
Public Overridable Function DisposeAsync () As ValueTask

返回

一个表示异步释放操作的任务。

实现

注解

使用 DisposeAsync 方法可以执行资源密集型释放操作,而不会阻止main线程。 在 Windows 8.x 应用商店应用或桌面应用中一个耗时的流操作可能阻塞 UI 线程并让应用看起来好像不工作时,这种性能的考虑就显得尤为重要了。 异步方法与 async Visual Basic 和 C# 中的 和 await 关键字结合使用。

此方法通过向后备存储写入任何更改并关闭流以释放资源来释放流。

调用 DisposeAsync 允许为其他目的重新分配 使用 Stream 的资源。 有关详细信息,请参阅 清理非托管资源

此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Dispose()异常。

适用于