Почему не всего #include
сгенерированные заголовки создаются от #import
?
DateTime.Now
предоставит вам текущее время в миллисекундах, но время с точностью до наносекунд довольно непрактично, по крайней мере, в Windows.
Я думаю, вы выйдете за жесткие пределы ОС, если будете отсчитывать наносекунды. Вот хорошая статья по этой теме:
http://www.lochan.org/2005/keith-cl/useful/win32time.html
Хотя Windows с радостью вернет точность 100 наносекунд, часы гарантированно будут обновлять примерно каждые 15,6 миллисекунды. Таким образом, Windows возвращает время, когда произошли эти обновления, с точностью до 100 наносекунд. Для большей точности вы, вероятно, должны быть готовы написать C или ассемблер и запустить встроенную ОС.
самое близкое, что я смог найти, - это метод DateTime.ToFileTime (). вы можете вызвать это в экземпляре DateTime следующим образом:
long starttime = DateTime.Now.ToFileTime()
Метод возвращает время файла Windows:
Время файла Windows - это 64-битное значение, которое представляет количество 100-наносекундных интервалов, прошедших с 12:00 полночь, 1 января 1601 г. н.э. (CE) Универсальное скоординированное время (UTC).
с его помощью можно было бы сократить интервалы до 100 нс.
src: http: // msdn. microsoft.com/en-us/library/system.datetime.tofiletime.aspx