我有一个方法,运行时间较长,需不需要用到线程

解决方案 »

  1.   


    不确定。应该看看这个方法主要阻塞在什么方面。例如这个方法主要占用CPU时间,而此时其它方法也主要占用CPU,那么线程就毫无意义,反而浪费时间。假设这个方法阻塞在网络通讯上,而其它方法主要占用CPU计算,那么就很值得使用另外线程。
      

  2.   

    也可以在耗时方法中不断调用Application.DoEvents来响应界面,如果只是为了让界面反应,可以用Application.DoEvents代替多线程,多线程有其他的麻烦,
      

  3.   

    http://dotnet.wgets.com/thread/276001
      

  4.   

    有规律的定时处理,建议使用定时器Timer
    处理的数据量较大,建议使用Thread异步机制
      

  5.   


    这样也行,又学到了
    Application.DoEvents