有人能告诉我如何在java中创建一个线程组中有n个线程的数组?

问题描述:

我一直在尝试一段时间来找到一些Java的例子或explenations如何创建一个线程组的一部分线程数组,如果有人知道更多请解释,谢谢。有人能告诉我如何在java中创建一个线程组中有n个线程的数组?

为什么要使用线程组呢?你真的需要它吗?也许你真正需要的是一个ExecutorService,你可以提交你的runnables和callables。你可能还想看看Callable。它几乎就像一个线程,除了Callable返回一个值。当你提交一个可调用的对象时,你会得到一个对象,这就像是从可调用对象获得价值的承诺。

+0

我是新来的Java所以我想学习所有的可能性 – PKb 2012-03-22 19:33:09

+0

个人而言,我喜欢创建执行者服务。你实际上并不是自己创建线程,而是创建Runnable并让执行程序处理运行它。这也是限制线程的好方法。 – JohnnyK 2012-03-22 19:36:51

+0

感谢您的建议。 – PKb 2012-03-22 20:09:51

当然。您可以实例化一个ThreadGroup,只是把它传递到Thread构造:

ThreadGroup threadGroup = new ThreadGroup("somename"); 
    Thread[] threads = new Thread[10]; 
    for (int i = 0; i < threads.length; i++) { 
     threads[i] = new Thread(threadGroup, someRunnable); 
    } 
    ...