C# 的 ContinueWith
方法主要用于处理异步操作完成后的任务。它接受一个 Action
委托,该委托会在异步操作完成后执行。虽然 ContinueWith
本身不能直接处理回调,但你可以通过将回调作为委托传递给 ContinueWith
方法来实现类似的功能。
下面是一个简单的示例,展示了如何使用 ContinueWith
处理回调:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
await Task.Run(() => DoAsyncWork())
.ContinueWith(callback =>
{
Console.WriteLine("异步操作已完成,回调被执行。");
});
}
static async Task DoAsyncWork()
{
await Task.Delay(1000);
Console.WriteLine("异步操作正在执行...");
}
}
在这个示例中,我们首先使用 Task.Run
启动一个异步操作 DoAsyncWork
。然后,我们使用 ContinueWith
方法注册一个回调,该回调会在 DoAsyncWork
完成时执行。当异步操作完成时,回调会被调用,输出 “异步操作已完成,回调被执行。”。