| 发表于:2007-09-16 19:21:135楼 得分:0 |
1防止界面线程阻塞,正如wltg2001(红猪) 所说的,如果有大量的cpu计算的工作,那么不开辟一个工作线程的话,界面线程有阻塞导致ui无法交互。还有一些情况针对第三方dll或者com调用不了解其内部实现方式(有可能内部有导致程序阻塞的函数)要单独开辟个线程处理一下。 2异步的socket通信,一般接收数据及处理数据要开辟线程。例如重叠io和线程池. 3提高程序运行效率,前提是工作线程执行时cpu占用率很低(如果开辟一个线程cpu占用率都100%了那么就不要在线程上费心思了,瓶颈不在这里),多开辟几个工作线程可以使工作提前完成。例如多线程下载工具,flashget,网络蚂蚁,多线程浏览器 多线程的处理要注意同步。 | | |
|