Estoy ejecutando un servicio de Windows y utilizando un bucle y Thread.Sleep para repetir una tarea, ¿sería mejor utilizar un método de temporizador?C# Timer o Thread.Sleep
Si es un ejemplo de código sería grande
actualmente estoy usando este código para repetir
int curMinute;
int lastMinute = DateTime.Now.AddMinutes(-1).Minute;
while (condition)
{
curMinute = DateTime.Now.Minute;
if (lastMinute < curMinute) {
// do your once-per-minute code here
lastMinute = curMinute;
}
Thread.Sleep(50000); // sleeps for 50 seconds
if (error condition that would break you out of this) {
break; // leaves looping structure
}
}
Tenga en cuenta que el temporizador puede estar sujeto a paradas adicionales del sistema o cargas elevadas que la suspensión podría no tener. Esto debe ser considerado en la implementación de cualquier persona. –