I think the way to look at this is to examine the non-trivial runAfter
implementations. If they have common elements that can be helped by some
utility classes, write those classes. If not, deal with each individually.

We are now committed to 1.5, so if we did not have runAfter we could
replace TaskManager with java.util.concurrent.ThreadPoolExecutor.

That's probably where we should be headed, since it reduces our maintenance burden.

Peter.

Reply via email to