Java中线程的分类
线程主要可以分为
主线程:即main()方法
子线程:非主线程皆为子线程
子线程地分类
守护线程:主要指为主线程提供通用服务的线程,比如GC线程。主线程一旦结束或者被销毁,守护线程也同步结束和销毁。
非守护线程:即用户线程,通常异步处理一些业务逻辑。用户线程本质上是我们自己创造的线程,通过start()方法启动。通过线程的setDaemo(true)方法,可以设置非守护线程为守护线程。
public static void main(String[] args) {
Thread one = new Thread(new Runnable() {
@Override
public void run() {
while (true) {
try {
System.out.println("守护线程运行一次");
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
});
// 将该线程设置为守护线程,默认为false
one.setDaemon(true);
one.start();
try {
Thread.sleep(10000);
Thread thread = Thread.currentThread();
System.out.println("线程"+thread.getName()+"退出");
} catch (Exception e) {
e.printStackTrace();
}
}