首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

求指导线程有关问题

2013-04-21 
求指导线程问题有个任务 不定时的产生一些数据,需要一个线程去处理,现在我考虑2种方式:1.使用一个一直在运

求指导线程问题
有个任务 不定时的产生一些数据,需要一个线程去处理,现在我考虑2种方式:
1.使用一个一直在运行的线程,有任务时候处理数据(线程利用一个全局队列判断是否有数据需要处理),没数据的时候执行sleep。
2.当有任务的时候,先判断该线程是否在运行,如果没运行就创建一个并开始运行;这样当一直没有任务的时候,该线程就不会运行。

请问这2种方式那种比较好,还有没有更好的方法,谢谢大家了....
[解决办法]
 参考读者写者问题。
设置一个队列,作为零界资源。写完了notify。处理线程就运行了。处理线程把队列中的都处理掉了,就wait,等待写者的notify
[解决办法]
何必这么纠结呢?

直接用
ThreadPool.QueueUserWorkItem(你的任务方法就行了);

热点排行