none
C# Winform中 怎样实现多个线程操作一个任务 来加快任务的完成速度 RRS feed

答案

  • 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日 7:38

全部回复

  • 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/
    2011年7月16日 4:58
  • 首先对于回帖表示感谢

    ————————————————

    1、多线程的操作速度当然比单线程快 这点可以明确。

    2、我是在做批量查询多个网站的收录状态的软件的时候,想加入多线程来完成 一个函数

    3、好多软件都有 可以调整线程个数的功能!

     

     

    2011年7月16日 8:10
  • 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日 7:38