本帖最后由 shenghongjun 于 2013-10-24 16:13:27 编辑

解决方案 »

  1.   

    异步就是在多线程间处理 参见 ThreadPool.QueueUserWorkItem
      

  2.   

    多线程的执行效率和你的cpu以及其他硬件息息相关。
    如果其他硬件不考虑的情况下。
    由于管理线程是需要消耗cpu资源的。
    所以每个cpu核并行执行的线程数量是有限的。(当然这个数量根据你的运算的复杂度不同是不同的)
      

  3.   

    像你这样的情况,肯定要并行处理。就要使用到多线程。
    线程池是一个好的选择,不要自己去创建多个线程处理,直接交给线程池。
    去网上看看ThreadPool.QueueUserWorkItem 和 Task.另外,照你的数据,得到1家酒店100天的信息都要一分钟的时间,貌似不太合理呀。问题在哪里呢?
      

  4.   

    批量的请求所用的时间以及效率能否等同于请求一家酒店的信息所用的时间呢?就算是100家酒店的数据都一样长,也几乎不可能,多线程调度也是要时间的,而且运行时,你的机器可能还会被其他程序分去一部分CPU