有人能告诉我如何在java中创建一个线程组中有n个线程的数组?
问题描述:
我一直在尝试一段时间来找到一些Java的例子或explenations如何创建一个线程组的一部分线程数组,如果有人知道更多请解释,谢谢。有人能告诉我如何在java中创建一个线程组中有n个线程的数组?
答
为什么要使用线程组呢?你真的需要它吗?也许你真正需要的是一个ExecutorService,你可以提交你的runnables和callables。你可能还想看看Callable。它几乎就像一个线程,除了Callable返回一个值。当你提交一个可调用的对象时,你会得到一个对象,这就像是从可调用对象获得价值的承诺。
答
当然。您可以实例化一个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);
}
...
我是新来的Java所以我想学习所有的可能性 – PKb 2012-03-22 19:33:09
个人而言,我喜欢创建执行者服务。你实际上并不是自己创建线程,而是创建Runnable并让执行程序处理运行它。这也是限制线程的好方法。 – JohnnyK 2012-03-22 19:36:51
感谢您的建议。 – PKb 2012-03-22 20:09:51