BeginInvoke的回调函数,参数是IAsyncResult为什么不是AsyncResult类?
每次我写一个回调函数的时候,像下面这样:
我觉得这个强转完全没有必要。为什么微软把这个函数调用参数做成一个接口,而不是具体的类? 每次都得强转很丑陋啊
static void Complete(IAsyncResult IA)
{
AsyncResult AR = (AsyncResult) IA;
}
我觉得这个强转完全没有必要。为什么微软把这个函数调用参数做成一个接口,而不是具体的类? 每次都得强转很丑陋啊
...全文
相关推荐
C#用委托BeginInvoke做异步线程
二、BeginInvoke方法 BeginInvoke方法是委托的一种方法,该方法可以异步地执行委托所指向的方法。该方法需要两个参数,第一个参数是委托的参数,第二个参数是委托方法结束后的回调函数。
C#线程 BeginInvoke和EndInvoke使用方法
asyncResult = task.BeginInvoke(2000, null, null); // EndInvoke方法会阻塞直到NewTask方法执行完成 int result = task.EndInvoke
C#中异步回调函数用法实例
本实例将详细解析C#中异步回调函数的定义、使用及其工作原理。首先,异步回调函数的核心在于将一个操作分解为两部分:启动操作(如BeginInvoke)和处理完成后的回调(如Completed)。
使用IAsyncResult 对象的异步操作与使用事件的异步操作
``` 这个方法接收一个`AsyncCallback`委托和一个状态对象作为参数,并调用`BeginInvoke`方法启动异步操作。
C#异步回调算法
`IAsyncResult` 类型的参数。


