本文详细介绍Java多线程编程初步
下面的代码演示了如何操作和使用ThreadGroup。
//ThreadGroupTest.java
public class ThreadGroupTest implements Runnabl
e
public void run
public static void main(String args[])
//生成一个新的线程组,并将两个线程对象放到该线程组里。
ThreadGroup threadgroup=new ThreadGroup″线程组″
Thread t1=new Threadthreadgroupnew ThreadGrou
pTest″线程 1″
Thread t2=new Threadthreadgroupnew ThreadGrou
pTest″线程 2″
//找到顶级的父线程
ThreadGroup parent=Thread.currentThread.getThrea
dGroup//得到当前线程的线程组
whileparent.getParent=null
parent=parent.getParent//得到父线程
//list方法打印出当前线程组的所有内容线程和子线程组
parent.list提示:上段程序中,list()方法显示ThreadGroup树(可能包括线程和线程组,所以构成了线程树)的结构和内容。运行上面程序你就会对线程组有了一定的了解。
线程优先级
虽然我们说线程是并发运行的。然而事实常常并非如此。当系统中只有一个CPU时,以某种顺序在单CPU情况下执行多线程被称为调度scheduling。Java采用的是一种简单、固定的调度法,即固定优先级调度。这种算法是根据处于可运行线程的相对优先级来实行的。当线程产生时,它继承原线程的优先级。在需要时可对优先级进行修改。在任何时刻,如果有多条线程等待运行 系统选择优先级最高的可运行线程运行。只有当它停止、自动放弃、或由于某种原因成为非运行状态优先级的线程时才能运行。如果两个线程具有相同的优先级它们将被交替地运行。
责编:豆豆技术应用
正在加载评论...
- Java新闻
- Java入门教程
- Java开发工具
- J2EE
- J2SE
- J2ME
- EJB/Spring
- Applet/Swing
- Servlet/JSP
- Struts/Hibernate
- JDBC/JDO
- Ajax
- 认证考试
- JAVA对象比较器Comparator
- Java 6 RowSet 使用完全剖析
- 深入了解"Java"中的“异常机制”
- 讨论5种跟踪Java执行的方法
- Java专业术语标准化规范
- java中线程概念描述
- JAVA中的反射机制详解
- Java语言灵巧指针与垃圾回收
- 讲述java语言中内部类的研究
- Java对于Cookie的操作详解