学多线程和异步不是很久,都是在网上搜些代码然后自己测试一下,并没有应用到真正的项目里面。我下面说的异步指的是BeginInvoke这种写法,是.net 4.0的,而不是.net 5的async的。
异步是否是多线程的封装?
异步的完成回调与事件的(本质上的)异同?
网上多说用异步相对于多线程的好处是异步不像多线程那样容易发生死锁,请问是真的吗,如何做到的?
BeginInvoke后直接EndInvoke,不用IAsyncResult回调,仍然会造成UI不响应,那我想问这个EndInvoke存在的合理性何在,也就是为什么微软不限制为只有通过IAsyncResult回调才能使用异步?