Как мы все знаем, секундомер может иметь проблемы в многопоточном асинхронном приложении, которое будет работать на всех ядрах.Многоядерный и поддерживающий поток .Net секундомер?
На многопроцессорном компьютере не имеет значения, на каком процессоре работает поток. Однако из-за ошибок в BIOS или аппаратной абстракции (HAL) вы можете получать разные результаты синхронизации на разных процессорах. Чтобы указать сродство процессора к потоку, используйте метод ProcessThread.ProcessorAffinity.
Есть ли какой-либо способ получить некоторые надежные отметки типа отметки/времени, которые имеют высокое разрешение/точность, а также согласованы между ядрами процессора?
Если невозможно сделать многожильный секундомер (QueryPerformanceCounter) безопасным, то какой лучший лучший способ получить хорошую временную метку по всем ядрам? DateTime.UtcNow.Ticks или Environment.TickCount? Любые другие счетчики?
Мне нужно лучшее разрешение, чем то, что может предоставить DateTime.UtcNow.Ticks. (10-15 мс)
образец код использования? –