在C#中执行fire and forget方法的最简单方法是什么?
我在WCF中看到他们有[OperationContract(IsOneWay = true)]
属性。但是WCF似乎有点缓慢而且很重要,只是为了创建一个非阻塞功能。理想情况下会出现类似静态无效的阻塞MethodFoo(){}
,但我认为不存在。
在C#中创建非阻塞方法调用的最快方法是什么?
例如
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"); }}
注意:阅读此内容的每个人都应该考虑他们是否真的想要完成这个方法。(参见#2最佳答案)如果方法必须完成,那么在某些地方,比如ASP.NET应用程序,你需要做一些事情来阻止并保持线程活着。否则,这可能会导致“忘记但永远不会实际执行”,在这种情况下,当然,根本不编写任何代码会更简单。(很好地描述了它在ASP.NET中的工作原理)
慕运维8079593