【问题标题】:.NET 3.5 Multi Threading.NET 3.5 多线程
【发布时间】:2012-04-02 05:00:38
【问题描述】:

使用 .NET 3.5。我有一个要进行多线程调用的函数。用户当前设置了应用程序中的最大线程数,我使用 new Thread(Run).Start() 在 for 循环中启动它们。 Run 函数处于 while 循环中并一直运行,直到类级别的布尔值设置为 false。

我想要做的是允许用户在应用程序运行它的后端进程时更改 maxThread 值,并让应用程序调整运行的线程数量。 .NET 3.5 中是否有某种线程管理器我可以使用,或者这将是我自己的情况。如果这是我自己的一卷,我将不胜感激您对实现此目标的最佳方法的任何种子想法。

【问题讨论】:

标签: .net multithreading c#-3.0


【解决方案1】:

.NET 3.5 中是否有某种线程管理器

是的,您可以使用 .NET 3.5 的任务并行库的 Reactive Extensions 反向端口。

我不会担心动态控制最大线程数。 TPL 应该会为您处理所有这些。

【讨论】:

    【解决方案2】:

    我认为一个简单的自定义解决方案是控制数据库表中的 maxThread 值。还有其他更轻量级的方法,例如将值写入文本文件/配置文件等。

    祝你好运

    【讨论】:

      【解决方案3】:

      查找ThreadPool

      但这将取决于您如何获得 maxthread 值。

      【讨论】:

        猜你喜欢
        • 2014-05-15
        • 2016-09-08
        • 2019-02-17
        • 1970-01-01
        • 2011-08-15
        • 1970-01-01
        • 1970-01-01
        • 2011-08-13
        • 1970-01-01
        相关资源
        最近更新 更多