在大量的数据处理业务上如何让程序更高效的执行,在最短时间内将数据处理完毕的问题上,使用多线程能否使数据处理速度加快,能快多少?有经验的人能否说说?
使用多进程是否更好些?

解决方案 »

  1.   

    使用多线程会加快速度,但是资源共享的部分处理的时候要加锁lock
    不然会出异常。但是也不是线程个数越多越好
    要根据情况而定几个线程性能最佳
      

  2.   

    对于单项任务使用多线程不一定有意义,除非像CS程序提供UI迅速响应之类的应用。多线程提高效率通常是从多个任务同时运行的情况下来说会比多个任务一个完成接着开始下一个任务的排队方式效率高,举个简单的例子,在asp.net中的某些操作,使用线程异步模式对多用户的吞吐量会高很多。可以有效介绍因为要排队而导致后面的处理请求一直等待前面请求的完成。