gpt4 book ai didi

c# - 异步调用 void 方法的最简洁方法

转载 作者:太空狗 更新时间:2023-10-29 23:54:55 25 4
gpt4 key购买 nike

我有一个我想异步调用的方法:

void Foo()
{
}

我确实可以通过以下方式异步调用它:

delegate void DVoidMethod();
DVoidMethod FooDelegate = new DVoidMethod(Foo);
FooDelegate.BeginInvoke(null,null);

有人有其他选择吗?

我觉得三行代码太多了?

最佳答案

免责声明:

不要在实际代码中使用它。这只是试图缩短提到的代码 OP。要在不返回结果的情况下进行真正的异步调用,请使用:

ThreadPool.QueueUserWorkItem(stateObject => Foo());

使用 ActionFunc框架中的委托(delegate):

new Action(Foo).BeginInvoke(null, null);

Action<T>自 2.0 以来一直存在。 3.5 中添加了其他变体。但是,在 2.0 上,您可以在某个地方手动声明其中的一堆以供进一步使用;或者更好,使用 LINQBridge .

关于c# - 异步调用 void 方法的最简洁方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1098948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com