更具体地说,上下文切换的性能下降是否适用于处于等待状态的线程?

在什么条件或情况下,ManualResetEvent 或 WaitHandle 可能会消耗资源?

最佳答案

ManualResetEvent 没有等待状态。唯一可以等待 MRE 的是线程。是的,当一个线程没有做它应该做的事情时,它会不必要地消耗大量宝贵的资源,即执行代码。一兆字节的虚拟内存和少量内核对象。相比之下,MRE 消耗的单个内核对象是小土 bean 。

您通常希望改用线程池线程。

并查看 .NET 4.0 中的可用内容。像 ManualResetEventSlim(不基于 OS 对象)和 Task 类。

关于c# - ManualResetEvent 处于等待状态时是否会消耗 CPU?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9344028/

10-13 06:21