C# 在C中对fire和forget使用async和void返回#
我在Web应用程序中有一个返回void的方法C# 在C中对fire和forget使用async和void返回#,c#,threadpool,async-await,C#,Threadpool,Async Await,我在Web应用程序中有一个返回void的方法 public static void doSomething(){ } 我喜欢在c#5.0中使用async,让它变成火与忘,如何 顺便说一句,如果void doSomethingQuick()是一种短期方法,那么最节省资源的方法是什么呢 如果void doSomethingSlow()是一个长期运行的方法,那么触发并忘记的最节省资源的方法是什么?有三种异步方法: async void Foo() async Task Bar() async Tas
public static void doSomething(){
}
我喜欢在c#5.0中使用async
,让它变成火与忘,如何
顺便说一句,如果void doSomethingQuick()是一种短期方法,那么最节省资源的方法是什么呢
如果void doSomethingSlow()是一个长期运行的方法,那么触发并忘记的最节省资源的方法是什么?有三种异步方法:
async void Foo()
async Task Bar()
async Task<T> Baz()
async void Foo()
异步任务栏()
异步任务Baz()
请注意,只有最后两个可以(a)等待。本例中的Foo用于火灾和遗忘场景。您必须记住,在本例中,
async
只是一个指示符,该方法本身可以使用wait
。因此,您可以声明异步void doSomethingQuick()
和异步void doSomethingSlow()
。方法返回任务并不意味着它在单独的线程上执行。它可能会返回一个已完成的任务。异步的要点是不要忘记。只需使用QueueUserWorkItem.Task.Factory.StartNew(()=>doSomething())代码>