在C#中,可以使用Attribute来标记一个方法为异步方法。通过使用async
和await
关键字,可以在异步方法中实现异步编程。
using System;
using System.Threading.Tasks;
public class Program
{
public static async Task Main(string[] args)
{
await DoSomethingAsync();
}
[AsyncMethod]
public static async Task DoSomethingAsync()
{
await Task.Delay(1000);
Console.WriteLine("Async method completed.");
}
}
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class AsyncMethodAttribute : Attribute
{
public AsyncMethodAttribute() { }
}
在上面的例子中,DoSomethingAsync
方法被标记为异步方法,通过async
和await
关键字实现了异步编程。在Main
方法中调用DoSomethingAsync
方法时使用了await
关键字等待异步方法执行完毕。