Pregunta: | 24021 - ROMPER LA BARRERA DE LOS 50 MILISEGUNDOS EN WINDOWS |
Autor: | pablo marcomini |
Necesitaría saber si es posible lograr control del tiempo en Windows con resolución menor a los 50 milisegundos (18.2 Ticks/seg).
He probado timers en VB, VC++, BC++Builder, Etc. y en nigun caso pude vencer esta barrera. Estoy desarrollando una aplicación que necesita leer o escribir en un puerto a intervalos regulares de, digamos, 100 microsegundos. Si alguien puede ayudarme con este desafio, por favor, alcanceme alguna pista. Gracias. |
Respuesta: | Neil Armstrong |
Con estas funciones obtendrás una precisión basada en la velocidad (megahercios) del procesador. El sistema lleva un conteo de ciclos desde el arranque.
// Estructuras para enteros largos (64 bits) LARGE_INTEGER count, frequency; // Leer Frecuencia para cálculos posteriores (ciclos por segundo) QueryPerformanceFrequency(&frequency); // Leer contador de ciclos en su valor actual QueryPerformanceCounter(&count); |