相关疑难解决方法(0)

TPL架构问题

我目前正在开展一个项目,我们面临着并行处理项目的挑战.到目前为止没什么大不了的;)现在问题.我们有一个ID列表,我们定期(每2秒)为每个ID调用StoredProcedure.每个项目需要单独检查2秒,因为它们是在运行时添加和删除的.此外,我们希望配置最大并行度,因为DB不应同时充满300个线程.正在处理的项目在完成上一次执行之前不应重新安排进行处理.原因是我们想要防止排队很多项目,以防数据库出现延迟.

现在我们正在使用一个自行开发的组件,它有一个主线程,定期检查需要安排处理的项目.一旦它有了列表,它就会删除那些基于自定义IOCP的线程池,然后使用等待句柄等待正在处理的项目.然后下一次迭代开始.IOCP因为它提供的工作窃取.

我想用TPL/.NET 4版本替换这个自定义实现,我想知道你将如何解决它(理想的简单和易读/可维护).我知道这篇文章:http://msdn.microsoft.com/en-us/library/ee789351.aspx,但它只是限制了使用的线程数量.叶子偷工作,定期执行物品....

理想情况下,它将成为一个通用组件,可用于需要定期为项目列表完成的所有任务.

欢迎任何投入,蒂安·马丁

.net c# task-parallel-library

6
推荐指数
1
解决办法
1715
查看次数

标签 统计

.net ×1

c# ×1

task-parallel-library ×1