!!!线程的问题!!!
我这个程序,如果不使用线程。那么就是在循环中一个一个的依次执行,速度很慢。
如果使用线程,那么一会儿就开了超过一千个线程,内存消耗是可想而知的。
我的想法就是太是利用多线程。先开100个,开到了100个就停止新开线程,等以前的某个线程执行完了就再开个,这样基本保持同时运行的是100个左右的线程。
可以怎么实现呢?(我用的是.NET 1.1)???/
------解决方案--------------------用线程池。
好管理些。
------解决方案--------------------线程池是最好的了.
------解决方案--------------------可以实现。
最简单方法用线程池
------解决方案--------------------直接用线程池
------解决方案--------------------theardpool
------解决方案--------------------你也可以增加一个变量,用来标示线程的状态,根据状态判断是否新增线程...
------解决方案--------------------开一个辅助线程执行这个循环函数 执行完了挂起 某个时刻需要再次执行在激活
------解决方案--------------------在线程里用全局型的计数器,设成静态的int型变量,在生成线程时就检查计数器是否超过范围,没超过则生成线程,否则不生成。线程在关闭时将计数器减一。
------解决方案--------------------我把书给你看,上面有案例。
------解决方案--------------------就是线程池吧。简单实用,一切线程的管理开销系统正动控制
ThreadPool.QueueUserWorkItem(new WaitCallback(函数名),可选的参数OBJECT);