文档章节

JVM的第二部分阅读

活好每一天写好每一行
 活好每一天写好每一行
发布于 2017/05/10 22:42
字数 480
阅读 13
收藏 0

实战 关于outofmemoryerror异常
设置方法运行时的堆大小 参数-Xms java堆的最小值 Xmx java堆的最大值
-XX:+HeapDumpOnOutOfMemoryError可以让虚拟机在出现内存溢出异常时Dump
出当前的内存堆转储快照。
解决堆区域异常 使用内存映像分析工具堆Dump出来的堆转储快照进行分析,
分清是内存泄漏还是内存溢出

虚拟机栈和本地方法栈溢出
-Xss参数设定栈空间大小

方法区和常量池溢出 -XX:PermSize 和 -XX:MaxPermSize限制方法区的大小
可能出现原因 大量类加载 比如cglib动态代理的时候,将会加载类信息
                        大量jsp第一次运行时需要编译为java类

直接内存溢出 -XX:MaxDirectMemorySize 
使用DirectByteBuffer分配内存是计算内存是否内分配手动抛出异常
Unsafe实例进行内存分配

操作系统分配给每个进程的内存是有限制的,32为windows为2GB,主要由
3部分组成 堆内存,方法区,虚拟机栈和本地方法栈

 

 

84----------------------第三章 垃圾收集齐与内存分配策略
哪些内存需要回收
什么时候回收
如何回收

可达性分析算法
通过一系列的称为GC ROOTS的对象作为起始点,从这些节点开始向下搜索,
搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链项链时,从GC ROOTS到
这个对象不可达 证明此对象是不可用的
可以作为GC Roots对象:
1.虚拟机栈(帧栈的本地变量表)中引用的对象
2.方法区中类静态属性引用的对象
3.方法区中常量引用的对象
4.本地方法栈中引用的对象

© 著作权归作者所有

活好每一天写好每一行
粉丝 0
博文 5
码字总数 2689
作品 0
杭州
私信 提问
《On Java 8》中文版,又名《Java 编程思想》中文第五版

来源:LingCoder/OnJava8 主译: LingCoder 参译: LortSir 校对:nickChenyx E-mail: lingcoder@gmail.com 本书原作者为 [美] Bruce Eckel,即(Thinking in Java 4th Edition,2006)的作者。......

ApacheCN_飞龙
04/04
0
0
JAVA区块链项目实战视频课程

课程介绍 全国首套,基于java的区块链实战教程。目的是让更多的java编程者了解区块链,掌握区块链开发。 1、区块链理论:以node.js例子区块链原理有深刻理解; 2、区块链java实战:深刻理解区...

小红牛
2018/09/14
0
0
为什么仅仅学Java还不够,你还需要学 Kotlin ?

  作为一个 Java 开发者,你一定对面向对象编程的核心概念烂熟于胸。Java 是纯面向对象语言,如果你想在 Java 项目中写一个函数,那么你首先得先定义一个类,然后再把函数写到这个类里面。...

Android群英传
2018/07/10
0
0
书单丨5本Java后端技术书指引你快速进阶

一名Java开发工程师 不仅要对Java语言及特性有深层次的理解 而且需要掌握与Java相关的 框架、生态及后端开发知识 本文涉及多种后端开发需要掌握的技能 对于帮助提高开发能力非常有帮助 NO.1...

Java高级架构
2018/05/30
0
0
我是如何阅读编程书籍的

我本科学习的是电子工程,还有唯一在EE方面学习的编程语言是 C/C++,Assembly,Matlab.自从去了 Startup Weekend event 这个网站之后,我开始对软件开发和计算机科学感兴趣,我想全身心投入到计...

fneg
2013/01/08
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习之模块

1、 stub_status模块: 用于展示nginx处理连接时的状态。 配置语法如下: Syntax:stub_status;Default:默认没有配置Context:server、location 可以编辑default.conf,加上如下配置: ...

码农实战
32分钟前
3
0
MySQL,必须掌握的6个知识点

目录 一、索引B+ Tree 原理 MySQL 索引 索引优化 索引的优点 索引的使用条件 二、查询性能优化使用 Explain 进行分析 优化数据访问 重构查询方式 三、存储引擎InnoDB MyISAM 比较 四、数据类...

李红欧巴
36分钟前
4
0
堆”和“栈

C++作为一款C语言的升级版本,具有非常强大的功能。它不但能够支持各种程序设计风格,而且还具有C语言的所有功能。我们在这里为大家介绍的是其中一个比较重要的内容,C++内存区域的基本介绍。...

SibylY
47分钟前
4
0
总结:Https

一、介绍 简单理解,https即在http协议的基础上,增加了SSL协议,保障数据传输的安全性。 它由以前的http—–>tcp,改为http——>SSL—–>tcp;https采用了共享密钥加密+公开密钥加密的方式 ...

浮躁的码农
50分钟前
6
0
数据库表与表之间的一对一、一对多、多对多关系

表1 foreign key 表2 多对一:表 1 的多条记录对应表 2 的一条记录 利用foreign key的原理我们可以制作两张表的多对多,一对一关系 多对多: 表1的多条记录可以对应表2的一条记录 表2的多条记...

Garphy
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部