旋转大量计时器.计时器线程

本文关键字:计时器 线程 旋转 | 更新日期: 2023-09-27 18:36:55

我想知道是否有合理的方法来确定Timers.Timer 对象的负载能力?或者更确切地说,线程功能。有谁知道使用 Timer 类启动大量(数百)线程是否存在任何问题?

编辑:对于工作,我们将启动许多线程,这些线程将进行阈值检查,并根据达到阈值的人给出分数。它将为每个客户端启动一个线程,并且每 5 分钟左右检查一次。这是一项服务,它将安装在服务器上,因此我使用 Timers.Timer 而不是 Threading.Timer(因为我也听说 Timers.Timer 比 Threading.Timers 更线程安全)。目前,我最多只有 ~10 个计时器,因为这就是我需要处理的全部内容。我询问可能的未来负载。还使用这篇文章作为使用哪个计时器的参考:System.Timers.Timer vs System.Threading.Timer

旋转大量计时器.计时器线程

有谁知道使用 Timer 类启动大量(数百)线程是否存在任何问题?

您似乎假设每个计时器都会创建一个专用线程。然而,事实并非如此。计时器回调在 .NET 线程池上执行。因此,创建许多计时器本身不是问题,但线程池可以处理的并发工作量显然存在限制。如果所有计时器同时触发,这将影响您。

Microsoft在一文托管线程池中提供了有关线程池的一些常规信息。