1. 后台线程(Daemon)
调用setDaemon(boolean),可以设置线程为后台线程。
java的前台线程未退出,主进程不会退出。Thread.start()后,启动它的线程不会block,会继续执行下面的代码。可以调用Thread.join(),等待该线程结束。
java的后台线程则不会block主进程,主进程退出,后台线程也就退出了。
测试代码:
package org.jamie.demo; class ChildThread extends Thread { private Thread parent; public ChildThread(Thread parent) { super(); this.parent = parent; } public void run() { try { Thread.sleep(5000); System.out.println("parent.isAlive()" + parent.isAlive()); } catch (InterruptedException e) { e.printStackTrace(); } } } public class DaemonTest { public void testThread(final boolean daemon) { final Thread t = new Thread() { public void run() { try { Thread.sleep(10000); new ChildThread(Thread.currentThread()).start(); System.out.println("daemon? " + daemon); } catch (InterruptedException e) { e.printStackTrace(); } } }; t.setDaemon(daemon); t.start(); } public static void main(String[] args) { DaemonTest test = new DaemonTest(); test.testThread(false); // test.testThread(true); System.out.println("last command"); } }
2. 线程状态转换图
图中的wait,timed waite,和blocked都是线程挂起,但blocked状态时,不能被打断(interrupt)的。
相关推荐
电子书相关:包含4个有关JAVA线程的电子书(几乎涵盖全部有关线程的书籍) OReilly.Java.Threads.3rd.Edition.Sep.2004.eBook-DDU Java Thread Programming (Sams) java线程第二版中英文 java线程第二版中英文 ...
Java线程讲解Java线程讲解Java线程讲解Java线程讲解Java线程讲解Java线程讲解Java线程讲解Java线程讲解Java线程讲解Java线程讲解
java 线程Dump 分析工具: Java的TDA线程转储分析器是一个用于分析Sun Java VM生成的线程转储和堆信息的小型Swing GUI(目前用1.4测试)。它从提供的日志文件中解析线程转储和类直方图。它提供关于发现的线程转储的...
Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程Java线程
分析java线程日志的工具,使用jstack把java线程日志dump下来,然后上传到该工具,就可以查看线程阻塞情况等信息。
4种常用Java线程锁的特点,性能比较、使用场景 线程(thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发...
Java线程模块Java线程之秒表新手学习Java线程模块时,利用Java中设置线程的暂停间隔,做的简易秒表
java线程.pdf java 学习java
java线程 线程 教程 java线程教程 java线程学习资料 本教程有什么内容? 本教程研究了线程的基础知识— 线程是什么、线程为什么有用以及怎么开始编写使用线程的简单 程序。 我们还将研究更复杂的、使用线程的应用...
Java线程状态流转图
Java线程Java线程Java线程Java线程Java线程Java线程
有点乐趣,小java线程监控程序, 小java线程监控程序 小java线程监控程序
Java线程.pdf
Java线程使用教程
Java线程pdf帮助文档
java线程深入讲解,可以了解java线程同步语安全,实现的方法和synchronized锁的使用与安全控制等等,谁用谁知道好用
Java 线程通信示例 源代码 多线程之间通信,值得收藏
Java 线程的学习和使用Java 线程的学习和使用
这是一个关于Java线程的ppt文件,燕山大学信息学院计算机系 李 峰
java 线程java 线程java 线程java 线程java 线程java 线程java 线程java 线程java 线程