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 完成时执行。当异步操作完成时,回调会被调用,输出 “异步操作已完成,回调被执行。”。