【发布时间】:2015-09-11 11:24:53
【问题描述】:
基于this,很明显该框架是动态的,其线程时间片基于处理器数、操作系统等。
时间片的长度取决于操作系统和处理器。
但是,在给定系统上获取实际线程时间片的方法是什么?
我们在Sleeping 和Thread.SpinWait(x) 之间动态切换,以保持某些对时间敏感的代码在亚毫秒范围内准确;但需要根据底层系统的线程时间片保持该开关可编程,这样我们就不会 SpinWait(xxx) 太久。
那么,如何在 C# 中获得线程时间片(5ms、10ms 或 20ms 等)?
【问题讨论】:
-
我认为这不可能......我环顾四周,似乎没有 API 或 WMI 可以告诉您时间片(或量子)长度。
标签: c# multithreading performance time scheduler