异步执行回调函数的参数是IAsyncResult,接收BeginInvoke方法返回结果
EndInvoke方法的参数,也有IAsyncResult,也能从BeginInvoke方法获取
而回调函数是异步调用的方法执行完成后,才执行
那不如就直接用EndInvoke方法来处理结果就行了啊请问:
回调函数是不是没啥用啊?是不是多余啊?
EndInvoke方法的参数,也有IAsyncResult,也能从BeginInvoke方法获取
而回调函数是异步调用的方法执行完成后,才执行
那不如就直接用EndInvoke方法来处理结果就行了啊请问:
回调函数是不是没啥用啊?是不是多余啊?
说白了,无非就是在使用异步。而这个在线程池中的线程何时结束是我们所关心的!
说回调函数没有用,也没有错,因为可以使用轮询的方式去看这个任务有没有完成,或者使用等待句柄的方式,等待这个线程的任务完成。而回调也是一种方式,只不过这个方式更加合理,在任务完成时,去主动调用你指定的方法。所以,Sandy945总结的非常好:Don't call us, we'll call you