我有一个线程将x / y坐标发送到某些输出。如果没有Sleep(1),它将对CPU产生冲击(最小值为13%)-但是输出非常平滑。在其中存在Sleep(1)的情况下,CPU使用率下降至1%,但会感觉到轻微的停顿。我觉得我需要一个Sleep(0.5)之类的东西。只是将线程从100%的位置稍微拉回一点的东西。但是似乎无法实现毫秒级的睡眠。
答案 0 :(得分:1)
您的Thread.Sleep
的最大精度约为> 10毫秒。因此,如果您想获得更高的精度,则需要专用的硬件。这可以是CPU,GPU甚至是音频时钟。
如果使用CPU,您将发现工作量很大,只是为了获得正确的时间。根据您的需要,您可以选择一个。
这里还有更多信息:Most accurate timer in .NET?