Refactor the current implementation to use Java's "Executor" framework. This should enable people to use Java's advanced Executor implementations instead of the built-in flat thread pool we're currently using. The current behavior (block while queue is full) would have to be implemented as a RejectedTaskHandler.
I would like to see the bgThreadManager bean implement the Executor interface, so I can use it as a TaskExecutor with Spring Batch 2.1