The ThreadGroup class provides a mechanism to group threads in a hierarchical structure so you can do operations with all the threads that belong to a thread group with only one call. By default, all the threads belong to the same group, but you can specify a different one when you create the thread.
Anyway, thread groups don't provide any features that make their use interesting:
- You have to create the threads and manage their status
- The methods that control the status of all the threads of the thread group have been deprecated and their use is discouraged
If you need to group threads under a common structure, it is better to use an Executor implementation, such as ThreadPoolExecutor. It provides more functionalities, which are as follows:
- You don't have to worry about the management of the threads. The executor creates and reuses them to save execution resources...