JAVA之多线程

  重温了多线程,睡前回忆一下,也是对多线程的知识点进行了梳理。

public void 1(){

System.out.println("你会吗?");

}




我们首先认识下进程和线程的概念

  进程:是正在运行的程序 是系统进行资源分配和调用的独立单位 每一个进程都有它自己的内存空间和系统资源

  线程:是进程中的单个顺序控制流,是一条执行路径

  


了解了两个概念后,再引入单线程和多线程的概念

  单线程:一个进程如果只有一条执行路径,则称为单线程程序 

  多线程:一个进程如果有多条执行路径,则称为多线程程序



实现多线程方式一:继承Thread类

方法介绍:

方法名 说明
void run() 在线程开启后,此方法将被调用执行
void start() 使此线程开始执行,Java虚拟机会调用run方法()


实现步骤 :

  1.定义一个类MyThread

  2.继承Thread类 

  3.在MyThread类中重写run()方法

  4.创建MyThread类的对象 启动线程


两个小问题 

  为什么要重写run()方法? 

    因为run()是用来封装被线程执行的代码 

  run()方法和start()方法的区别? 

    run():封装线程执行的代码,直接调用,相当于普通方法的调用 

    start():启动线程;然后由JVM调用此线程的run()方法 



实现多线程方式一:继承Thread类

实现步骤 

  1.定义一个类MyRunnable实现Runnable接口 

  2.在MyRunnable类中重写run()方法 

  3.创建MyRunnable类的对象 

  4.创建Thread类的对象,把MyRunnable对象作为构造方法的参数 

  5.启动线程 


设置和获取线程名称


方法名  说明
void setName(String name)  将此线程的名称更改为等于参数name
String getName()  返回此线程的名称
Thread currentThread()  返回对当前正在执行的线程对象的引用

通过setName()方法设置线程名称

运行结果:


线程的生命周期

这里由一张图表示:


本站总访问量 本站访客数
后台管理 友情链接
Copyright © 2019 黄黄
ICP备案号: 皖ICP备19022664