积极答复者
C# Winform中 怎样实现多个线程操作一个任务 来加快任务的完成速度

问题
答案
-
dear
1.多线程的操作部一定比单线程快,而是要看你的流程,如果你所要运算的资料会有流程相依关系,这时多线程就发挥不了作用
2.批量查询收录,这看起来并无流程关系,多线程必能发挥作用
3.线程调整是看CPU机器能耐,并非把线呈调大,运算就一定很快,没弄好反而会拖垮速度,.NET 4.0里的Parallel 可以不用担心机器,它会自动帮你调整
http://www.dotblogs.com.tw/yc421206/archive/2011/01/15/20827.aspx
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/- 已标记为答案 开心果地域 2011年7月17日 12:37
全部回复
-
dear
1.别误会了,多线程不一定能加快某个方法的完成速度,没用好甚至会耗掉你的时间,比如说:资料分析,要同时间分析很多"不同"的演算法,然后演算的结果画在UI上,这时用多线程就可以加速处理,反之,若只有一个演算法,是用不上多线程的。
2.多线程是让你同时间操作耗时的演算方法,然后让主线程UI画面不至于卡死,比如说:你要一边复制一个大的挡案,又要能操作UI画面
3.多线程必须要考虑变数共用时的锁定,才不会让变数的值乱掉。
4.你必须要了解多线程的生命周其,小的整理了一些常用的方法,这些方法主要是用来控制多线程的状态,请参考:http://www.dotblogs.com.tw/yc421206/archive/2011/01/05/20599.aspx
5.试着动手做然后多观察一下执行绪的状态,比如像小的这样观察,http://www.dotblogs.com.tw/yc421206/archive/2011/01/04/20575.aspx
更多:http://www.dotblogs.com.tw/yc421206/category/4583.aspx
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/ -
dear
1.多线程的操作部一定比单线程快,而是要看你的流程,如果你所要运算的资料会有流程相依关系,这时多线程就发挥不了作用
2.批量查询收录,这看起来并无流程关系,多线程必能发挥作用
3.线程调整是看CPU机器能耐,并非把线呈调大,运算就一定很快,没弄好反而会拖垮速度,.NET 4.0里的Parallel 可以不用担心机器,它会自动帮你调整
http://www.dotblogs.com.tw/yc421206/archive/2011/01/15/20827.aspx
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/- 已标记为答案 开心果地域 2011年7月17日 12:37