近期开发工作中经常涉及到Windows系统下的多线程编程,下面说一点自己的感悟。
一定要把工作线程(Work Thread)和界面线程(UI Thread)分开,工作线程不要涉及到界面操作,否则很容易导致界面的死锁。死锁产生的原因很多都是由于工作线程执行某操作耗时太久,阻塞了界面中的消息循环导致的。所以,一定要把这两种线程分清楚,涉及操作界面的代码一定要由界面线程处理。
近期开发工作中经常涉及到Windows系统下的多线程编程,下面说一点自己的感悟。
一定要把工作线程(Work Thread)和界面线程(UI Thread)分开,工作线程不要涉及到界面操作,否则很容易导致界面的死锁。死锁产生的原因很多都是由于工作线程执行某操作耗时太久,阻塞了界面中的消息循环导致的。所以,一定要把这两种线程分清楚,涉及操作界面的代码一定要由界面线程处理。