java 多线程语法_Java基础语法之多线程学习笔记整理

众所周知,利用好多线程机制,可以大大提高系统整体的并发能力以及性能,而且线程间的切换和调度的成本小。因此,多线程是Java学习者必须掌握的语法重点。本文为大家整理了进程和线程、实现多线程方式、设置和获取线程名称、线程优先级和线程控制等等多线程知识点笔记,有需要的朋友一起来学习吧!

3173b033c4dc1c25c204985420e6228e.png

1、进程和线程

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

(2)线程:是进程中的单个顺序控制流,是一条执行路径。单线程:一个进程如果只有一条执行路径,则称为单线程程序。多线程:一个进程如果有多条执行路径,则称为多线程程序。

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

(1)方法介绍

61a391a23827019a46969e5a7ac5b185.png

(2)实现步骤:

- 定义一个类MyThread继承Thread类

- 在MyThread类中重写run()方法

- 创建MyThread类的对象

- 启动线程

(3)两个小问题

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

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

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

run():封装线程执行的代码,直接调用,相当于普通方法的调用。start():启动线程;然后由JVM调用此线程的run()方法

3、设置和获取线程名称

方法介绍:

350ff21feaa8116cc79cbdf34d99ea8d.png

4、线程优先级

(1)线程调度

分时调度模型:所有线程轮流使用 CPU 的使用权,平均分配每个线程占用 CPU 的时间片。抢占式调度模型:优先让优先级高的线程使用 CPU,如果线程的优先级相同,那么会随机选择一个,优先级高的线程获取的 CPU 时间片相对多一些。Java使用的是抢占式调度模型。假如计算机只有一个 CPU,那么 CPU 在某一个时刻只能执行一条指令,线程只有得到CPU时间片,也就是使用权,才可以执行指令。所以说多线程程序的执行是有随机性,因为谁抢到CPU的使用权是不一定的。

(2)优先级相关方法

f30723e2a9c2c545c5aca281a3c95373.png

5、线程控制

相关方法:

429785a2241207b40e53de9733fcfd9b.png

以上就是Java基础语法中,关于多线程学习笔记的全部整理,大家都明白了吗?如果还有不明白的地方,可以在博学谷官网观看相关章节的就业班视频课程,相信有了讲师深入浅出的讲解,大家对多线程的知识点会掌握的更加牢靠。


版权声明:本文为weixin_39980929原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。