The pure JFC solution is to store all the threads in a collection and have the main thread call join() on each one after they're
all launched.
If you have util.concurrent in the classpath anyway you can use
CountDown or in Java 5.0
CountDownLatch [ August 04, 2004: Message edited by: David Weitzman ]