Thread线程类
创建线程类
java使用java.lang.Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例。每个线程的作用是完成一定的任务,实际上就是执行一段程序流即一段顺序执行的代码。java使用线程执行体来代表这段程序流。java中通过继承Thread类来创建并启动多线程的步骤如下:
- 定义Thread类的子类,并重写该类的run() 方法,该run()方法的方法体就代表了线程需要完成的任务,因此把run()方法称为线程执行体
- 创建Thread子类的实例,即创建了线程对象
- 调用线程对象的start()方法来启动该线程,执行其中的run方法
void start() 使该线程开始执行;java虚拟机调用该线程的run方法。
结果是多个线程并发地运行;当前线程(main线程)和另一个线程(创建的新线程,执行其run方法)。
多次启动一个线程是非法的。特别是当线程已经结束执行后,不能再重新启动。
java程序属于抢占式调度,哪个线程的优先级高,哪个线程优先执行;同一个优先级,随机选择一个执行
Thread的实例
1 | |
1 | |
1 | |
多线程的原理和好处
多个线程在不同的栈空间,所以多个线程之间互不影响

获取线程的名字
1 | |
Thread类常用方法
API中该类中定义了有关线程的一些方法,具体如下:
构造方法:
public Thread(): 分配一个新的线程对象。public Thread(String name): 分配一个指定名字的新的线程对象public Thread(Runnable target): 分配一个带有指定目标的新的线程对象public Thread(Runnable target,String name): 分配一个带有指定目标的新的线程对象并指定名字
常用方法:
public String getName(): 获取当前线程名称public void start():导致这个线程进入就绪状态,等待虚拟机调度,执行其中的run()方法public void run():此线程要执行的任务在此处定义代码public static void sleep(long millis):是Thread类的一个静态方法,使当前线程休眠,进入阻塞状态(暂停执行),如果线程在睡眠状态被中断,将会抛出IterruptedException中断异常 注意:在哪个线程里面调用sleep()方法就阻塞哪个线程。public static Thread currentThread(): 返回对当前正在执行的线程对象的引用。在哪个线程中就返回哪个线程的对象引用。
Thread线程类
https://blog.wangxk.cc/2020/08/30/Thread线程类/