IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Java基础(十八)——线程与进程、多线程(本质、创建方式)、线程的休眠、生命周期、临界资源 -> 正文阅读

[Java知识库]Java基础(十八)——线程与进程、多线程(本质、创建方式)、线程的休眠、生命周期、临界资源

Java基础(十八)——线程与进程、多线程(本质、创建方式)、线程的休眠、生命周期、临界资源

一、初识线程与进程

打开任务管理器,即可看到进程

在这里插入图片描述

进程:程序执行的j基本单位,程序由一个或者多个进程组成。
线程:线程是 CPU 执行的基本单位,进程是有一个或者多个线程组合合成。

举个例子:
音乐播放器播放音乐的同时还有歌词在滚动。其中,歌词就是一个线程在负责,播放音乐又是另外一个线程在负责。

二、初识多线程

1、多线程的本质

线程是由 CPU 调度执行,多线程是 CPU 不断地来回切换调度不同的线程执行的结果。

2、多线程创建的方式

a、继承

自定义线程类并继承 Thread 类,重写 run()方法。接着实例化自定义类,通过对象调用 start()开启线程:

在这里插入图片描述

b、实现 Runnable 接口

自定义任务类并实现 Runnable 接口,重写 run()。实例化自定义任务类,实例化 thread 类并在构造方法中传递任务类的对象,通过 Thread 类对象调用 start()方法开启线程:
在这里插入图片描述

c、实现 Callable 接口(了解即可,很少用)

自定义类实现 Callable 接口,重写 call()方法,拥有返回值。

d、通过线程池启动线程

线程池:可以实现线程的重复使用,减少线程的创建和销毁时间。

(1)一条线程的线程池

在这里插入图片描述

(2)三(多)条线程的线程池

在这里插入图片描述

(3)自带缓冲区的线程池

在这里插入图片描述

3、 Thread.sleep(毫秒)——线程的休眠

sleep()可以直接通过 Thread 的类来调用。
在这里插入图片描述

4、线程的五种状态(线程的生命周期)

在这里插入图片描述

5、临界资源

临界资源:多个线程共享一份数据

问题:下面代码输出结果?
在这里插入图片描述
答案是:
在这里插入图片描述

因为创建了三条线程,num 这个变量每个对象都有。所以是10。

如果要变成临界资源,就用把这个变量变成静态的:
在这里插入图片描述

这样,变量共享了以后,最终结果就是30。

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-11-19 17:30:07  更:2021-11-19 17:31:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:02:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码