当前位置:编程学习 > C#/ASP.NET >>

关于C#线程池的问题!急!

--------------------编程问答-------------------- 1家酒店扔1个线程池处理》处理完所有需要处理的天数,执行下一家

你可以同时往线程池里扔20家 这样就很快,

多线程需要注意 数据锁 和  主线程交互 --------------------编程问答--------------------
引用 1 楼 rayyu1989 的回复:
1家酒店扔1个线程池处理》处理完所有需要处理的天数,执行下一家

你可以同时往线程池里扔20家 这样就很快,

多线程需要注意 数据锁 和  主线程交互

线程池的话 是同时进行请求的吗?我看到别人有说的用异步处理,我这个先排除电脑的配置以及网速外,只要能够达到同时请求就可以! --------------------编程问答-------------------- 异步就是在多线程间处理 

参见 ThreadPool.QueueUserWorkItem --------------------编程问答-------------------- 线程池和多线程是两个概念。
线程池是线程的管理者
按照我对你需求的理解,你这里应该是开多线程。 --------------------编程问答-------------------- 多线程的执行效率和你的cpu以及其他硬件息息相关。
如果其他硬件不考虑的情况下。
由于管理线程是需要消耗cpu资源的。
所以每个cpu核并行执行的线程数量是有限的。(当然这个数量根据你的运算的复杂度不同是不同的)



--------------------编程问答-------------------- 像你这样的情况,肯定要并行处理。就要使用到多线程。
线程池是一个好的选择,不要自己去创建多个线程处理,直接交给线程池。
去网上看看ThreadPool.QueueUserWorkItem 和 Task.

另外,照你的数据,得到1家酒店100天的信息都要一分钟的时间,貌似不太合理呀。问题在哪里呢? --------------------编程问答-------------------- 开N个线程,处理N家的,每个线程处理完一家后,处理剩余的,直至全部完成
线程数量太多也不好,一般可初步定为物理核心 * 2,自己多测试
--------------------编程问答-------------------- 批量的请求所用的时间以及效率能否等同于请求一家酒店的信息所用的时间呢?

就算是100家酒店的数据都一样长,也几乎不可能,多线程调度也是要时间的,而且运行时,你的机器可能还会被其他程序分去一部分CPU
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,