黑马程序员技术交流社区
标题:
java线程池和线程组的异同,可以同时在一个多线程实现的项目中使用吗?怎么使用?
[打印本页]
作者:
夕兮兮
时间:
2016-1-20 12:07
标题:
java线程池和线程组的异同,可以同时在一个多线程实现的项目中使用吗?怎么使用?
首先要明确的是,如同数据库的连接和建立一样,线程的启动和停止对JVM和操作系统而言都是一件开销很大的事情。 线程池的目的就是为了避免线程被频繁的创建,启动和停止。 而之所以要提出“线程组”的概念,很难从字面上找到原因。这多少为我们讨论的主题带来了一些混乱。一般地说,我们认为是由于“安全”或者“保密”方面的理由才使用线程组的。根据Arnold和Gosling的说法:“线程组中的线程可以修改组内的其他线程,包括那些位于分层结构最深处的。一个线程不能修改位于自己所在组或者下属组之外的任何线程”(注释①)。然而,我们很难判断“修改”在这儿的具体含义是什么。下面这个例子展示了位于一个“叶子组”内的线程能修改它所在线程组树的所有线程的优先级,同时还能为这个“树”内的所有线程都调用一个方法。 所以,可以同时用,但必须搞清楚为什么。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2