public Task InvokeAsync(Action action) { var job = new Job(action, false); AddJob(job); return job.TaskCompletionSource.Task; }