Servicio de Windows o Programador de tareas para tareas de mantenimiento?

Tengo una aplicación C # que realiza algunas tareas de mantenimiento. Debe funcionar aproximadamente cada hora, aunque no es demasiado importante si está un poco apagado. Y tiene que ejecutarse en un servidor Win2003 sin nadie conectado.

Básicamente, me pregunto si debería escribir un servicio de Windows y, en caso afirmativo, si Thread.Sleep () es una forma adecuada de pausar el hilo durante una hora, o si hay mejores maneras de asegurarse de que el hilo permanezca inactivo y no se ponga cualquier servidor de carga? (alias. ¿Qué es lo más opuesto de un Spinlock?)

La alternativa es el Programador de tareas de Windows, pero no estoy seguro de si eso es bueno para el uso del servidor ya que a) tendría que almacenar el programa en él en lugar de en mi app.config, b) No puedo controlar fácilmente el servicio a través de iniciar / detener / reiniciar y c) No sé si las Credenciales del Usuario de Windows son tan seguras como cuando lo ingreso en el Servicio MMC Snapin.

Cuales son tus opiniones ¿Es posible y bueno tener un Servicio inactivo o recomendaría el programador de tareas?

Respuestas a la pregunta(6)

Su respuesta a la pregunta