【发布时间】:2020-10-24 15:04:35
【问题描述】:
Windows Server 2016/2019 存在问题 在一个典型的循环中“进行”1000 次重复,停顿 1 毫秒。
for (int i = 0; i <1000; i ++)
{
Thread.Sleep (1);
}
服务器处理每个睡眠周期 - 15 毫秒。自 1000 个请求以来。 而不是 1000 毫秒。 (1 秒) 执行 15000 毫秒。 (15 秒)
在家用电脑上没问题。仅在服务器上存在此问题。 我怀疑 CPU 是罪魁祸首。
【问题讨论】:
-
我的猜测是,在您的家用 PC 上,您正在运行 Chrome,它可以将计时器加速到 1 毫秒的分辨率。另一方面,服务器使用默认的 15 毫秒分辨率,这对于服务器工作负载来说更好。 (您不希望您的服务器经常中断。)家用 PC 上的行为是 likely to change soon,因此只有请求更高计时器分辨率的程序才能获得它。