COM组件间调用的性能问题
多线程编程是大家都比较头疼的问题,不小心就会碰到死锁,野指针,同步调用问题等等,虽然在客户端编程方面会带来不少好的体验,比如界面和处理在不同的线程,则不会卡住界面,但是相对于他的副作用来说,让不少人还是望而却步。QQ客户端就是这样一个例子,从QQ重构的3个大版本来说,也一直在回避这个问题。Hummer在设计的时候为了防止编程的复杂性和后期的难以维护,也主动放弃了多线程特性(部分底层,socket等会有多线程),至少模块间调用是不会有多线程的,另外QQ是基于COM的组件编程,所有模块都是COM封装,有复杂的COM调用和引用计数问题,另外QQ的所有默认逻辑都是基于同步调用的,如果引入多线程,则很多
用户评论