private static Task[] GetWorkerTasks(ArrayImpl tasks) { return(tasks .Cast <BackgroundTask>() .Select(x => x.WorkerTask) .ToArray()); }