【问题标题】:How to stop all C# Tasks safely running inside a Thread in C#如何停止所有 C# 任务在 C# 中的线程内安全运行
【发布时间】:2013-03-05 06:19:27
【问题描述】:

我有一个 C# 线程,它在 10 分钟后重复运行,并且从这个线程假设 10 个 C# 4.0 任务在不同的时间内运行。

现在,当我重复线程时,如何确保所有 10 个内部任务都安全停止,然后在该线程再次开始运行时重新开始。

【问题讨论】:

  • 请出示您的代码。如果你使用Task类,你可以在任务对象上调用Wait()方法。

标签: c# .net multithreading task-parallel-library


【解决方案1】:

如果您想等到某些Tasks 完成,您可以将它们存储在某个地方,然后调用Task.WaitAll()

但如果不了解您的代码,很难说这是否是最佳方法。

【讨论】:

  • 我的任务永远不会完成,因为它们是无限的
  • @AbhishekGupta 为什么? Tasks 如果您使用它们来执行您需要的工作然后完成它们(通过从代表返回),那么工作会更好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-14
  • 1970-01-01
相关资源
最近更新 更多