在C#中,可以使用Attribute來標(biāo)記一個(gè)方法為異步方法。通過使用async
和await
關(guān)鍵字,可以在異步方法中實(shí)現(xiàn)異步編程。
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
方法被標(biāo)記為異步方法,通過async
和await
關(guān)鍵字實(shí)現(xiàn)了異步編程。在Main
方法中調(diào)用DoSomethingAsync
方法時(shí)使用了await
關(guān)鍵字等待異步方法執(zhí)行完畢。