在C#中重新启动并行任务的后台任务

时间:2017-10-28 09:05:44

标签: c# multithreading parallel-processing publish-subscribe

我有一个创建任务(使用任务工厂)的应用程序,每分钟ping一次队列URL以检查连接性。如果建立连接,它将使用parallel.for()启动三个任务。这些任务订阅队列。连接后,任务(父任务)每1分钟ping一次,检查连接是否仍然存在。如果出现网络问题或连接断开,则会为所有并行任务调用取消令牌,并在ping成功后重新启动它们。

这是我需要满足的要求的相当奇怪的解决方案,如下所示: 1.创建订阅队列的应用程序。 2.使它有多个消费者(多线程) - 因此我使用parallel.for() 3.如果遇到任何问题,请确保应用程序重新启动(因此使用重新启动订阅的任务工厂创建的任务)

现在这个设置并没有为我提供我期望从多线程应用程序获得的性能。有什么建议吗?

0 个答案:

没有答案