最近在CSDN社区的AJAX版有些人问道关于AJAX的多线程的问题...
在这里我想说下我的看法...
IE的线程模式其实是STA(Single-Threaded Apartment)模式...
也就是说,只能有一个线程...那么异步调用,事件机制是怎么实现的呢?
答案是任务队列. 使用Active Object模式模拟多任务也是同样的技术...
每当一个事件发生,就在任务队列最后添加一个Command对象...
当当前的任务执行完毕之后,便从队列头取出一个Command对象,执行do()方法...
本文探讨了在Internet Explorer浏览器中AJAX技术如何通过任务队列机制模拟多线程行为。由于IE采用单线程公寓(STA)模式,无法直接支持多线程,故通过将异步调用和事件机制转化为任务队列中的Command对象来实现类似多任务的效果。


被折叠的 条评论
为什么被折叠?



