The executor thread pool system is the best way to control this. The thread pool can be setup once & called out whilst all clients of the code will wait for their jobs/futures to complete.
Richard Holland wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > I was thinking more along the lines of a global static method in some > kind of toolkit class, so that any part of BJ which is > parallelisation-aware can take advantage of it if it is set. This also > avoids passing parameters that don't have an immediately obvious impact > on the expected output of the method. I'd also like to have this global > variable control the total number of threads, so that if the user forks > a set of threads themselves and runs a parallel-aware method in each of > them, then BJ will not attempt to sub-divide each thread into more > threads than the limit configured by this variable. Likewise if the user > changes the limit whilst threads are currently running, they should stop > (if there are too many) or new ones should start (if there are too few), > but taking care to make sure that every parallelisation request > maintains at least one thread so the job doesn't stop entirely.... there > must be a toolkit for this somewhere surely? > _______________________________________________ Biojava-l mailing list - [email protected] http://lists.open-bio.org/mailman/listinfo/biojava-l
