| |
|
开发:
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知识库]【多线程阶段总结】--初识 |
文章目录进程?进程(Process)是程序的?次执?过程,是系统运?程序的基本单位,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。因此进程是动态的。系统运??个程序即是?个进程从创建,运?到消亡的过程。 线程?线程与进程相似,但线程是?个?进程更?的执?单位。?个进程在其执?的过程中可以产?多个线程。与进程不同的是同类的多个线程共享进程的堆和?法区资源,但每个线程有??的程序计数器、 虚拟机栈和本地?法栈,所以系统在产??个线程,或是在各个线程之间作切换?作时,负担要?进程?得多,也正因为如此,线程也被称为轻量级进程。 ?个 Java 程序的运?是 main 线程和多个其他线程同时运?。 进程与线程的关系?推荐阅读: 程序计数器为什么是私有的?程序计数器主要有下?两个作?:
虚拟机栈和本地?法栈为什么是私有的?虚拟机栈: 每个 Java ?法在执?的同时会创建?个栈帧?于存储局部变量表、操作数栈、常量池引?等信息。从?法调?直?执?完成的过程,就对应着?个栈帧在 Java 虚拟机栈中?栈和出栈的过程。 堆和?法区为什么是公有的?堆和?法区是所有线程共享的资源,其中堆是进程中最?的?块内存,主要?于存放新创建的对象 (所有对象都在这?分配内存),?法区主要?于存放已被加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。 并发与并行的区别?并发(concurrency): 同?时间段,多个任务都在执? (单位时间内不?定同时执?); 并行(parallel): 单位时间内,多个任务同时执? 为什么要使用多线程?先从总体上来说: 多线程实现?多线程实现之—继承Thread类步骤1、自定义线程类继承Thread类 多线程实现之—实现Runnable接口步骤1、自定义线程类实现Runnable接口 对比:继承Thread类vs实现Runnable接口通过上面大家对比一下应该也发现了,两种方法只有第一步存在差别,但是,启动线程他们也是有区别的 多线程实现之—实现Callable接口1、实现Callable接口,需要返回值类型 对比:普通方法调用vs多线程不知道大家有没有发现,我们重写run()方法,但是最后却调用的是start()方法 执行run方法,只有一个线程
执行start方法,有两个线程
区别run方法自始至终都只有一个线程就是主线程 线程池?什么是?线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。线程池线程都是后台线程。 为什么使用线程池?使用线程池最大的原因就是可以根据系统的需求和硬件环境灵活的控制线程的数量,且可以对所有线程进行统一的管理和控制,从而提高系统的运行效率,降低系统运行运行压力;当然了,使用线程池的原因不仅仅只有这些,我们可以从线程池自身的优点上来进一步了解线程池的好处; 使用普通线程
使用线程池
使用线程池有哪些优势?1、线程和任务分离,提升线程重用性; 使用线程池的缺点?1、如果不对线程进行加锁处理 ,容易造成线程死锁 总结啊哦,以上就是小编对于多线程的简单总结,学习还在继续,期待分享吧! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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 10:58:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |