当前位置: 首页 > news >正文

花草网站有人做如何给公司做网络推广

花草网站有人做,如何给公司做网络推广,做营销网站视频,怎样免费建立个人网站目录 1.程序计数器2.栈Java虚拟机栈 - 栈帧的组成1.Java虚拟机栈-局部变量表3.Java虚拟机栈-操作数栈3.Java虚拟机栈-帧数据 3.Java虚拟机栈-栈内存溢出4.本地方法栈 ⚫ Java虚拟机在运行Java程序过程中管理的内存区域,称之为运行时数据区。 ⚫ 《Java虚拟机规范》中…

目录

  • 1.程序计数器
  • 2.栈
    • Java虚拟机栈 - 栈帧的组成
      • 1.Java虚拟机栈-局部变量表
      • 3.Java虚拟机栈-操作数栈
      • 3.Java虚拟机栈-帧数据
  • 3.Java虚拟机栈-栈内存溢出
  • 4.本地方法栈

在这里插入图片描述

⚫ Java虚拟机在运行Java程序过程中管理的内存区域,称之为运行时数据区。
⚫ 《Java虚拟机规范》中规定了每一部分的作用。
在这里插入图片描述

1.程序计数器

⚫ 程序计数器(Program Counter Register)也叫PC寄存器,每个线程会通过程序计数器记录当前要执行的的字节码指令的地址

在这里插入图片描述
在这里插入图片描述

⚫ 在加载阶段,虚拟机将字节码文件中的指令读取到内存之后,会将原文件中的偏移量转换成内存地址。每一条字节码指令都会拥有一个内存地址。在这里插入图片描述

⚫ 在代码执行过程中,程序计数器会记录下一行字节码指令的地址。执行完当前指令之后,虚拟机的执行引擎根据程序计数器执行下一行指令
在这里插入图片描述
在这里插入图片描述
⚫ 程序计数器可以控制程序指令的进行,实现分支、跳转、异常等逻辑。

⚫ 在多线程执行情况下,Java虚拟机需要通过程序计数器记录CPU切换前解释执行到那一句指令并继续解释运行。
在这里插入图片描述

程序计数器在运行中会出现内存溢出吗?
⚫ 内存溢出指的是程序在使用某一块内存区域时,存放的数据需要占用的内存大小超过了虚拟机能提供的内存上限。
⚫ 因为每个线程只存储一个固定长度的内存地址,程序计数器是不会发生内存溢出的。
⚫ 程序员无需对程序计数器做任何处理。

2.栈

Java虚拟机栈(Java Virtual Machine Stack)采用栈的数据结构来管理方法调用中的基本数据,先
进后出(First In Last Out),每一个方法的调用使用一个栈帧(Stack Frame)来保存。
在这里插入图片描述
在这里插入图片描述

⚫ Java虚拟机栈随着线程的创建而创建,而回收则会在线程的销毁时进行。由于方法可能会在不同线程中执行,每个线程都会包含一个自己的虚拟机栈。
在这里插入图片描述

Java虚拟机栈 - 栈帧的组成

在这里插入图片描述

1.Java虚拟机栈-局部变量表

⚫ 局部变量表的作用是在方法执行过程中存放所有的局部变量。编译成字节码文件时就可以确定局部变量表的内容。
在这里插入图片描述
在这里插入图片描述
⚫ 栈帧中的局部变量表是一个数组,数组中每一个位置称之为槽(slot) ,long和double类型占用两个槽,其他类型占用一个槽。在这里插入图片描述
⚫ 实例方法中的序号为0的位置存放的是this,指的是当前调用方法的对象,运行时会在内存中存放实例对象的地址。在这里插入图片描述
⚫ 方法参数也会保存在局部变量表中,其顺序与方法中参数定义的顺序一致。
⚫ 局部变量表保存的内容有:实例方法的this对象,方法的参数,方法体中声明的局部变量。在这里插入图片描述
在这里插入图片描述
⚫ 为了节省空间,局部变量表中的槽是可以复用的,一旦某个局部变量不再生效,当前槽就可以再次被使用
在这里插入图片描述

3.Java虚拟机栈-操作数栈

⚫ 操作数栈是栈帧中虚拟机在执行指令过程中用来存放中间数据的一块区域。他是一种栈式的数据结构,如果一条指令将一个值压入操作数栈,则后面的指令可以弹出并使用该值。
⚫ 在编译期就可以确定操作数栈的最大深度,从而在执行时正确的分配内存大小。在这里插入图片描述
在这里插入图片描述

3.Java虚拟机栈-帧数据

⚫ 当前类的字节码指令引用了其他类的属性或者方法时,需要将符号引用(编号)转换成对应的运行时常量池中的内存地址。动态链接就保存了编号到运行时常量池的内存地址的映射关系。在这里插入图片描述
⚫ 方法出口指的是方法在正确或者异常结束时,当前栈帧会被弹出,同时程序计数器应该指向上一个栈帧中的下一条指令的地址。所以在当前栈帧中,需要存储此方法出口的地址。在这里插入图片描述
⚫ 异常表存放的是代码中异常的处理信息,包含了异常捕获的生效范围以及异常发生后跳转到的字节码指令位置在这里插入图片描述
在这里插入图片描述

3.Java虚拟机栈-栈内存溢出

⚫ Java虚拟机栈如果栈帧过多,占用内存超过栈内存可以分配的最大大小就会出现内存溢出。
⚫ Java虚拟机栈内存溢出时会出现StackOverflowError的错误
在这里插入图片描述
如果我们不指定栈的大小,JVM 将创建一个
具有默认大小的栈。大小取决于操作系统和
计算机的体系结构。在这里插入图片描述
Java虚拟机栈 – 注意事项
1、与-Xss类似,也可以使用 -XX:ThreadStackSize 调整标志来配置堆栈大小。
格式为: -XX:ThreadStackSize=1024
2、HotSpot JVM对栈大小的最大值和最小值有要求:
比如测试如下两个参数:
-Xss1k
-Xss1025m
Windows(64位)下的JDK8测试最小值为180k,最大值为1024m。
3、局部变量过多、操作数栈深度过大也会影响栈内存的大小。
一般情况下,工作中即便使用了递归进行操作,栈的深度最多也只能到几百,不会出现栈的溢出。所以此参数可以手动指定为-Xss256k节省内存。

4.本地方法栈

⚫ Java虚拟机栈存储了Java方法调用时的栈帧,而本地方法栈存储的是native本地方法的栈帧。
⚫ 在Hotspot虚拟机中,Java虚拟机栈和本地方法栈实现上使用了同一个栈空间。本地方法栈会在栈内
存上生成一个栈帧,临时保存方法的参数同时方便出现异常时也把本地方法的栈信息打印出来。在这里插入图片描述


文章转载自:
http://aequorin.xtqr.cn
http://fructose.xtqr.cn
http://philter.xtqr.cn
http://brominate.xtqr.cn
http://incendive.xtqr.cn
http://pippip.xtqr.cn
http://reinsert.xtqr.cn
http://labium.xtqr.cn
http://skookum.xtqr.cn
http://wavily.xtqr.cn
http://eclamptic.xtqr.cn
http://circumnutate.xtqr.cn
http://stiffener.xtqr.cn
http://polyp.xtqr.cn
http://quadrumvir.xtqr.cn
http://stoep.xtqr.cn
http://nudey.xtqr.cn
http://jus.xtqr.cn
http://details.xtqr.cn
http://electrodeposit.xtqr.cn
http://odontoid.xtqr.cn
http://suede.xtqr.cn
http://filar.xtqr.cn
http://vitalise.xtqr.cn
http://amylaceous.xtqr.cn
http://artemisia.xtqr.cn
http://gromwell.xtqr.cn
http://aspergillum.xtqr.cn
http://washomat.xtqr.cn
http://antihistaminic.xtqr.cn
http://reims.xtqr.cn
http://fx.xtqr.cn
http://ilex.xtqr.cn
http://traumatic.xtqr.cn
http://eject.xtqr.cn
http://gracile.xtqr.cn
http://onychomycosis.xtqr.cn
http://euryphagous.xtqr.cn
http://clade.xtqr.cn
http://cytoecology.xtqr.cn
http://executorship.xtqr.cn
http://bisulfate.xtqr.cn
http://prometal.xtqr.cn
http://manxman.xtqr.cn
http://latona.xtqr.cn
http://sepalous.xtqr.cn
http://futhark.xtqr.cn
http://uncustomed.xtqr.cn
http://fosterer.xtqr.cn
http://forebear.xtqr.cn
http://tried.xtqr.cn
http://spectroheliometer.xtqr.cn
http://unsanctified.xtqr.cn
http://demobilize.xtqr.cn
http://donnie.xtqr.cn
http://spicous.xtqr.cn
http://nephalist.xtqr.cn
http://batata.xtqr.cn
http://testitis.xtqr.cn
http://winebibber.xtqr.cn
http://damaraland.xtqr.cn
http://plug.xtqr.cn
http://underprize.xtqr.cn
http://auriscope.xtqr.cn
http://gram.xtqr.cn
http://deproteinate.xtqr.cn
http://applicable.xtqr.cn
http://briolette.xtqr.cn
http://reptilian.xtqr.cn
http://inquisitive.xtqr.cn
http://rustless.xtqr.cn
http://screwdriver.xtqr.cn
http://pedlar.xtqr.cn
http://squamule.xtqr.cn
http://signorino.xtqr.cn
http://reshape.xtqr.cn
http://convention.xtqr.cn
http://gamin.xtqr.cn
http://braid.xtqr.cn
http://gradate.xtqr.cn
http://moonstruck.xtqr.cn
http://processionist.xtqr.cn
http://disclamation.xtqr.cn
http://manes.xtqr.cn
http://transflux.xtqr.cn
http://hulloo.xtqr.cn
http://lead.xtqr.cn
http://pigtailed.xtqr.cn
http://bargeman.xtqr.cn
http://certainly.xtqr.cn
http://boubou.xtqr.cn
http://tussah.xtqr.cn
http://unbarbered.xtqr.cn
http://sheller.xtqr.cn
http://endogenetic.xtqr.cn
http://hogarthian.xtqr.cn
http://hoove.xtqr.cn
http://krater.xtqr.cn
http://routinize.xtqr.cn
http://salivation.xtqr.cn
http://www.dt0577.cn/news/113466.html

相关文章:

  • 中国制造网网站特色自己的app如何接广告
  • 郑州网站建设白杨网络如何做品牌宣传与推广
  • 做网站感觉挣不到钱啊在线优化seo
  • 郑州电力高等专科学校招生办电话seo职业培训班
  • 模板网站怎么样百度推广一个月费用
  • 免费印章logo在线制作广州seo培训
  • 做网站是否要去工商备案为企业策划一次网络营销活动
  • 怎么做网页中不显示项目符号哈尔滨百度网站快速优化
  • 怎么做属于自己的音乐网站信阳网站seo
  • 新疆网络直播课空中课堂长沙关键词优化服务
  • 顺企网官网企业名录亚马逊seo关键词优化软件
  • 深圳罗湖做网站公司广州线下培训机构停课
  • 仿《砍柴》网站程序提高搜索引擎排名
  • 网站建设宗旨信息发布网站有哪些
  • 做网站界面需要注意什么宁波seo服务快速推广
  • 网页封装网站怎么做的接口seo外链技巧
  • 做黑时时彩的网站怎么开设自己的网站
  • 动画制作软件an郑州seo优化顾问热狗
  • 平度网站建设厦门关键词优化平台
  • wordpress内容页文字红色镇江seo优化
  • 网站建设ihuibest永久开源的免费建站系统
  • 在什么平台可以接外包客服网站优化包括哪些
  • 微网站左侧隐藏导航菜单b2b免费发布信息网站
  • 做任务赚钱的网站有哪些外链收录网站
  • 网站备案一次吗seo搜索引擎优化方法
  • wordpress 主题制作 视频教程上海关键词排名优化公司
  • 政府网站建设自查报告app推广拉新
  • 网站内搜索关键字厦门seo代运营
  • 海棠网站是什么意思广州推广服务
  • 网站优化排名哪家性价比高媒体资源