Creación de temporizadores múltiples con extensiones reactivas

Tengo una clase muy simple que estoy usando para sondear un directorio en busca de nuevos archivos. Tiene la ubicación, un momento para comenzar a monitorear esa ubicación y un intervalo (en horas) para saber cuándo volver a verificar:

public class Thing
{
  public string         Name {get; set;}
  public Uri            Uri { get; set;}
  public DateTimeOffset StartTime {get; set;}
  public double         Interval {get; set;}
}

Soy nuevo en las extensiones reactivas, peropensar Es exactamente la herramienta adecuada para el trabajo aquí. A la hora de inicio, y en cada intervalo posterior, simplemente quiero llamar a un servicio web que hace todo el trabajo pesado, usaremos el siempre inventivopublic bool DoWork(Uri uri) para representar eso.

editar: DoWork es una llamada a un servicio web que buscará nuevos archivos y los moverá si es necesario, por lo que su ejecución debe ser asíncrona. Devuelve un verdadero si se completó, falso si no.

Las cosas se complican si tengo toda una colección de estosThings. No puedo envolver mi cabeza alrededor de cómo crear elObservable.Timer() para cada uno, y que todos llamen al mismo método.

edit2: Observable.Timer (DateTimeOffset, Timespan) parece perfecto para crear un IObservable para lo que estoy tratando de hacer aquí. ¿Pensamientos?

Respuestas a la pregunta(3)

Su respuesta a la pregunta