Код: Выделить всё
from time import *
def test_time(f, c):
cnt = 0
for i in range(c):
ps, ts = f(), f()
if not ps - ts:
cnt += 1
return cnt
if __name__ == '__main__':
res = test_time(perf_counter_ns, 1_000_000)
print(res) # usually returns a count of over 500k
< /code>
на Linux этого не происходит. Я понимаю, что выходное разрешение на Windows ограничено приращением 100 нс. Мой вопрос, если я что-то упускаю здесь, или есть ли это способ, которым это можно заставить работать над Windows. Это дает хороший обзор измерения точности с помощью Python, но не обращается к более узкому вопросу, почему последовательные призывы PREF_COUNTER_NS
Я проверил ограничение процесса Python в Windows одним ядром или изменяя приоритет процесса. Ни один не оказал явного влияния на количество столкновений.
Подробнее здесь: https://stackoverflow.com/questions/797 ... ame-number