Java多线程001——一图读懂线程与进程

news/2024/6/28 18:05:40
本博客 猫叔的博客,转载请申明出处

前言

本系列将由浅入深,学习Java并发多线程。

一图读懂线程与进程

image

  • 1、一个进程可以包含一个或多个线程。(其实你经常听到“多线程”,没有听过“多进程”嘛)
  • 2、进程存在方法区
  • 3、线程存在程序计数器
  • 4、堆占最大内存,其为创建时分配的,是多线程共享的,主要存放new创建的对象
  • 5、方法区也是多线程共享的,主要存放类、常量、静态变量
  • 6、CPU的基本执行单位是线程(注意!不是进程)
  • 7、由此,线程需要一个程序计数器记录当前线程要执行的指令地址
  • 8、当CPU的时间片用完,让出后记录当前执行地址,下次继续执行(时间片轮询)
  • 9、只有执行Java代码时pc技数器记录的才是下一条指令的地址,执行native方法,则记录的是undefined地址
  • 10、线程中的栈,只要存储线程局部变量、调用栈帧
栈帧:C语言中,每个栈帧对应着一个未运行完的函数。栈帧中保存了该函数的返回地址和局部变量。

公众号:Java猫说

现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。

Image Text


http://lihuaxi.xjx100.cn/news/244601.html

相关文章

Java面试题汇总及答案2021最新(序列化含答案)

Java面试题汇总及答案2021最新(序列化含答案) 为大家整理了2021最新的Java面试题及答案下载,这套Java面试题总汇已经汇总了Java基础面试到高级Java面试题,几乎涵盖了作为一个Java程序员在面试中需要掌握或者可能被问到的绝大部分…

友盟数据—值得手游创业者关注的玩家数据

友盟数据—值得手游创业者关注的玩家数据 你知道“辣妈”是什么游戏的忠诚玩家吗?你知道“大龄玩家”都喜好怎样的游戏?你知道哪类玩家最“多金”?2015年,不仅宅男、宅女们爱玩游戏,辣妈和奶爸们也成了手游行业的主力军…

用模板实现堆

堆数据结构是一种数组对象,它可以被视为一棵完全二叉树结构。堆结构的二叉树存储是最大堆:每个父节点的都大于孩子节点。最小堆:每个父节点的都小于孩子节点。这是一个普通的堆,我们想把它变成最大堆,就必须了解最大堆…

Java面试题汇总及答案2021最新(JavaWeb含答案下载)

Java面试题汇总及答案2021最新(JavaWeb含答案下载) 为大家整理了2021最新的Java面试题及答案下载,这套Java面试题总汇已经汇总了Java基础面试到高级Java面试题,几乎涵盖了作为一个Java程序员在面试中需要掌握或者可能被问到的绝大…

Java并发编程71道面试题及答案

Java并发编程71道面试题及答案 1、在java中守护线程和本地线程区别? java中的线程分为两种:守护线程(Daemon)和用户线程(User)。 任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDa…

SpringJpa多对多映射关系

1.菜单表 Entity Table(name"t_menus") public class Menus { Id GeneratedValue(strategyGenerationType.IDENTITY) Column(name"menusid") private Integer menusid; Column(name"menusname") private String menus…

解析大型.NET ERP系统 设计异常处理模块

异常处理模块是大型系统必备的一个组件,精心设计的异常处理模块可提高系统的健壮性。下面从我理解的角度,谈谈异常处理的方方面面。我的设计仅仅限定于Windows Forms,供参考。 1 定义异常类型 .NET 框架定义很多异常类型,ERP系统中…

在IIS中为SQL Server 2008配置报表服务

不知道是不是SQL Server 2008的Bug,我在安装了SQL2008后(选择了安装报表服务的),但是在IIS中根本没有报表服务的虚拟目录。只是这么一个问题,其他BI设计器、报表服务等都还算正常。 要正常使用报表服务则需要手动添加报…