Usando Thread.Sleep () em um serviço do Windows

Estou escrevendo um serviço do Windows que precisa dormir por longos períodos de tempo (15 horas é o mais longo que ele dorme, 30 minutos é o mais curto). Atualmente, estou usando Thread.Sleep (horário calculado) para colocar meu código no modo de suspensão. Thread.Sleep é a melhor opção ou devo usar um timer? Venho pesquisando isso há um tempo e não consigo encontrar uma resposta concisa. Como este é um serviço do Windows, não preciso me preocupar em bloquear a interface do usuário; portanto, não consigo pensar em um motivo para não usar o Thread.Slee

Qualquer insight seria apreciado.

questionAnswers(10)

yourAnswerToTheQuestion