多线程的创建和使用

多线程的创建和使用

一、线程的创建方式

创建线程常用的有两种方式
1,继承Thread类来创建线程类。
2,实现 Runnable 接口 。

创建线程-方法1-继承 Thread类
可以通过继承 Thread 来创建一个线程类,该方法的好处是 **this 代表的就是当前线程,**不需要通过 Thread.currentThread() 来获取当前线程的引用。

代码如下:

/**
 * 描述:继承Thread类来创建线程类
 */
public class Main {
    public static void main(String[] args) {
        MyThread t = new MyThread();
        t.start();  // 线程开始运行
    }
}
class MyThread extends Thread {
    @Override
    public void run() {
        System.out.println("这里是线程运行的代码");
    }
}

创建线程-方法2-实现 Runnable 接口
通过实现 Runnable 接口,并且调用 Thread 的构造方法时将 Runnable 对象作为 target 参数传入来创建线程对象。 该方法的好处是可以规避类的单继承的限制;但需要通过 Thread.currentThread() 来获取当前线程的引用。

/**
 * 描述:继承Thread类来创建线程类
 */
public class Main {
    public static void main(String[] args) {
        MyThread t = new MyThread();
        new Thread(t).start();  // 线程开始运行
    }
}
class MyThread implements Runnable {
    @Override
    public void run() {
        System.out.println("这里是线程运行的代码");
    }
}

线程的使用

Thread 的常见构造方方法
在这里插入图片描述
Thread类 常见方法
在这里插入图片描述在这里插入图片描述

ID :是线程的唯一标识,不同线程不会重复
名称:是各种调试工具用到
状态:表示线程当前所处的一个情况
优先级:高的线程理论上来说更容易被调度到 关于后台线程,需要记住一点:JVM会在一个进程的所有非后台线程结束后,才会结束运行。 是否存活,即简单的理解,为 run 方法是否运行结束了。

进程和线程的生命周期

发布了63 篇原创文章 · 获赞 118 · 访问量 6465

猜你喜欢

转载自blog.csdn.net/lzh_99999/article/details/104554792