在C#中執(zhí)行fire and forget方法的最簡(jiǎn)單方法是什么?我在WCF中看到他們有[OperationContract(IsOneWay = true)]屬性。但是WCF似乎有點(diǎn)緩慢而且很重要,只是為了創(chuàng)建一個(gè)非阻塞功能。理想情況下會(huì)出現(xiàn)類似靜態(tài)無(wú)效的阻塞MethodFoo(){},但我認(rèn)為不存在。在C#中創(chuàng)建非阻塞方法調(diào)用的最快方法是什么?例如class Foo{
static void Main()
{
FireAway(); //No callback, just go away
Console.WriteLine("Happens immediately");
}
static void FireAway()
{
System.Threading.Thread.Sleep(5000);
Console.WriteLine("5 seconds later");
}}注意:閱讀此內(nèi)容的每個(gè)人都應(yīng)該考慮他們是否真的想要完成這個(gè)方法。(參見#2最佳答案)如果方法必須完成,那么在某些地方,比如ASP.NET應(yīng)用程序,你需要做一些事情來(lái)阻止并保持線程活著。否則,這可能會(huì)導(dǎo)致“忘記但永遠(yuǎn)不會(huì)實(shí)際執(zhí)行”,在這種情況下,當(dāng)然,根本不編寫任何代碼會(huì)更簡(jiǎn)單。(很好地描述了它在ASP.NET中的工作原理)
在C#中執(zhí)行fire and forget方法的最簡(jiǎn)單方法是什么?
慕桂英4014372
2019-08-15 15:27:05