public GisDataPump() { Task.Factory.StartNew(() => { ril = new List<RouteInfo>(); //read all route-files into RouteInfoObjects. foreach (var routeFile in Directory.GetFiles(routeDictionary, "*.json")) { var file = new FileInfo(routeFile); //Send data to client when movement is detected (or faked in this case) var ri = new RouteInfo(file, (id, geodata) => { this.InvokeToAll<GeoCars>(new { id, geodata },"pos"); }); ril.Add(ri); var r = new Random(42); ri.Start(r.Next(1000,5000)); } }); }