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学习之多线程

1. Java中的多线程
多线程是Java的一个重要特性,多线程支持Java程序能够同时运行多个任务,多线程的目的是提高程序运行的效率,因为大型应用程序都需要高效完成大量任务。

2. Java中的进程与线程
1) Java中的进程:
(1)进程的定义:在操作系统中正在运行的程序。
(2)进程的特点:
①动态性(基本特点)
②并发性(重要特点)
③异步性(进程按各自独立运行的、不可预知的速度向前推进)
④独立性(进程是一个能独立运行、独立获得资源和独立接受调度的基本单位)
⑤ 结构特性(程序段、数据段、进程控制块)
2)Java中的线程:
(1)线程的定义:轻量级进程。
(2)线程的特点:
①轻型实体(线程一般不拥有系统资源,只有保障其能够独立运行的必不可少的资源)
②独立调度(线程是独立运行的,每个线程不知道是否还有其他线程的存在)
③抢占式执行(当前执行的线程随时都有可能被挂起,以便运行下一个线程)
④可并发执行(一个进程中的多个线程是可以并发执行的)
⑤共享进程资源(同一个进程中的所有线程都是可以共享进程的资源)

3.Java中的进程与线程之间的关系与区别
1)关系:线程是进程的组成部分,一个进程可以拥有多个线程,但一个线程必须拥有一个父进程。
2)区别:
(1)进程有独立代码、数据空间,进程切换开销大;
线程有独立运行栈、程序计数器,线程切换开销小;
(2)多进程:一个操作系统能够同时运行多个程序或任务;
多线程:一个程序能够同时运行多个任务或顺序流。

4.Java中的线程中的异常处理策略
比如我们去迪斯尼乐园,进了迪斯尼乐园后发现有5个检票口,但由于目前客流不是太多,暂时只开放3个窗口,这时“核心线程”就是开放的3个窗口,“核心线程数”就是3,“最大线程数”是5。后来客流越来越大,又开放了剩余的2个窗口,这下子5个窗口全部开放了,但是客流太多了以至于5个窗口都造成了拥挤和排长队。然后,迪斯尼就关闭了大门,不准后进大门的游客再进入检票口。

5.Java中的线程存活时间
线程存活时间:允许检票员休息的最长时间,为了防止检票员偷懒。

6.Java中使用线程池的好处?
有时系统需要处理非常多的运行时间短的请求,如果每一个请求都需要开启一个新线程,那么系统就需要不断地创建和销毁线程,有时花在创建和销毁线程上的时间比真正允许线程的时间还久。此外,当线程数据庞大时,系统可能崩溃。
故此,使用线程池的好处不言而喻了。
1)减少创建和销毁线程的性能开销(因为线程池中的线程可以重复使用,类似洗碗池里的陶瓷碗)
2)方便对线程进行管理和维护(比如定时开启、定时终止、周期执行、并发控制等)
7.JMM模型
Java线程内存模型与CPU缓存模型很像,可以说Java线程内存模型是基于CPU缓存模型建立的,同时Java线程内存模型是标准化的。

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-07-14 00:18:51  更:2021-07-14 00:19:05 
 
开发: 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年5日历 -2024/5/2 11:02:56-

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