There may be situations when the current thread's execution should be halted until another thread 'A' completes execution. This may be accomplished by invoking the join method on thread A. Using A.join() within a thread is tantamount to making the current thread sleep until thread 'A' completes execution.
An example would be a document to reformat and then print. Start the reformatting operation
in a thread and then launch a print thread. But have the print thread join the formatting thread.
The main thread can then go on to other tasks.