Мне нужны часы реального времени с точностью до микросекунд, как я могу это сделать?
есть ли часы реального времени, кроме секундомера;
Мне нужны часы реального времени с точностью до микросекунд, как я могу это сделать?
есть ли часы реального времени, кроме секундомера;
Вы хотите System.Diagnostics.Stopwatch, который может точно измерять временные интервалы до микросекунды (в зависимости от аппаратных ограничений).
System.Diagnostics.Stopwatch
использует QueryPerformanceCounter
и QueryPerformanceFrequency
API Windows. Разрешение не является стандартным для машин, но обычно оно порядка микросекунд (см. эту статью в KB для получения дополнительной информации).
В Vista/Win7 есть также QueryProcessCycleTime
и QueryThreadCycleTime
, который даст вам количество прошедших циклов для вашего процесса/потока. Это полезно, если вы хотите знать только активное время для процесса (например, время, когда вы не были отключены).
Самый точный таймер, доступный в .NET, StopWatch.
Для измерений с высоким разрешением вы можете использовать функцию QueryPerformanceCounter:
class Program
{
[DllImport("kernel32.dll")]
private static extern void QueryPerformanceCounter(ref long ticks);
static void Main()
{
long startTicks = 0L;
QueryPerformanceCounter(ref startTicks);
// some task
long endTicks = 0L;
QueryPerformanceCounter(ref endTicks);
long res = endTicks - startTicks;
}
}
проверьте http://www.c-sharpcorner.com/UploadFile/kapilsoni88/Digital_Click08142008142713PM/Digital_Click.aspx и также проверьте это http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.aspx
Если вы хотите хорошо провести время, я думаю, что csharp как язык высокого уровня может не быть хорошей идеей. вы можете собрать простую программу, которая вступает в RTC, а затем привязывает ее к вашей программе через библиотеку. Это буквально лучший возможный сценарий, который вы можете получить без вскрытия объекта, но для этого требуется некоторый низкий уровень знаний.
Если у вас нет доступа в Интернет, и вы хотите в реальном времени для пробной лицензии на программное обеспечение, тогда вы можете использовать USB-ключ с часами реального времени.
Его расчет времени ведется внутренними часами, которые управляются батареей. Вы можете получить доступ к времени с USB-ключа, используя функции API, которые поставляются вместе с этими типами ключей.
EX- http://www.senselock-europe.com/en/elite-el-rtc-dongle.html