internal Future asyncExec(Job job, object obj) { Future future = new Future(); Runner runner = new Runner(job, obj, future); lock (runnables) { runnables.AddLast(runner); Monitor.Pulse(runnables); } return future; }
public Runner(Job job, object obj, Future future1) { future = future1; args = obj; runnable = job; }