更具体地说,上下文切换的性能下降是否适用于处于等待状态的线程?
在什么条件或情况下,ManualResetEvent 或 WaitHandle 可能会消耗资源?
最佳答案
ManualResetEvent 没有等待状态。唯一可以等待 MRE 的是线程。是的,当一个线程没有做它应该做的事情时,它会不必要地消耗大量宝贵的资源,即执行代码。一兆字节的虚拟内存和少量内核对象。相比之下,MRE 消耗的单个内核对象是小土 bean 。
您通常希望改用线程池线程。
并查看 .NET 4.0 中的可用内容。像 ManualResetEventSlim(不基于 OS 对象)和 Task 类。
关于c# - ManualResetEvent 处于等待状态时是否会消耗 CPU?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9344028/