我知道在 C#(和 VB.Net)中我可以创建一个委托(delegate),将它指向一个方法,然后使用这个委托(delegate)同步或异步运行我的方法。我知道该怎么做。
有时我使用委托(delegate)异步运行一个方法,有时这些方法有输入参数。为了异步运行我的方法,我调用委托(delegate) BeginInvoke
方法,提供我的输入参数,然后是“null, null”。
尽管 Visual Studio 的智能感知建议我改为提供 AsyncCallback
,但我提供了“null, null”作为最后两个参数名为 callback 的对象后跟第二个简单命名为 @object
的对象如下所示。
什么是 AsyncCallback
它是如何使用的,另一个名为 @object
的对象的目的是什么?由智能感知建议?
谢谢
最佳答案
AsyncCallback
是一种充当回调函数的委托(delegate)类型。
如果您传递一个函数作为此参数,.Net 将在委托(delegate)完成异步执行后调用您的回调。
第二个参数允许您将状态传递给 AsyncCallback,以便您的回调函数可以知道它来自什么。
关于c# - `AsyncCallback` 和 `@object` 关于 .Net 中的委托(delegate)的目的是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10247868/