在Java虚拟机规范描述中,除了程序计数器外,虚拟机内存的其他几个运行区域都有发生 OOM 异常的可能。在这里,用代码验证各个运行时区域存储的内容并讨论该如何进行处理 ...
分类:
编程语言 时间:
2019-01-30 13:08:37
阅读次数:
175
第79节:Java中一些要点 前言 一些知识点忘了没,可以通过一个点引出什么内容呢?做出自己的思维导图,看看自己到了哪一步了呢 内容 如果有人问jre,jdk,jvm是什么,你怎么回答呢? jre的英文是java runtime environment ,包含有java虚拟机,库函数,java运行应 ...
分类:
编程语言 时间:
2019-01-30 01:28:05
阅读次数:
192
从Java开发通过大概3个月的学习转到大数据开发,主要分享一下学习路径: 第一阶段: 01.Linux学习(跟鸟哥学就ok了) 02.Java 高级学习(《深入理解Java虚拟机》、《Java高并发实战》) 第二阶段: 03.Hadoop (董西成的书) 04.HBase(《HBase权威指南》) ...
分类:
编程语言 时间:
2019-01-29 12:49:15
阅读次数:
296
java生命周期分为以下三部分:启动,运行,消亡。 运行中的JVM任务:执行Java程序。 程序开始执行时才运行,程序结束时就停止。在同一台机器上运行三个程序,就会有三个运行中的Java虚拟机。 Java虚拟机总是开始于一个main()方法,这个方法必须是公有、返回void、直接受一个字符串数组。在 ...
分类:
其他好文 时间:
2019-01-28 21:44:43
阅读次数:
198
java 中的 synchronized 运行 在 Java 中,我们经常用 synchronized 关键字对程序进行加锁。无论是一个代码块还是静态方法或者实例方法,都可以直接用 synchronized 声明。 当声明 synchronized 代码块时,编译的字节码将包含 monitorent ...
分类:
编程语言 时间:
2019-01-28 19:24:41
阅读次数:
190
1 #!/bin/bash 2 3 JAVA_HOME=/usr/java/default 4 5 #java虚拟机启动参数 6 JAVA_OPTS="-server -Xms800m -Xmx800m -Xmn256m -Xss256k -XX:PermSize=256M -XX:MaxPermS... ...
分类:
编程语言 时间:
2019-01-28 15:06:17
阅读次数:
182
一、介绍 jstack是java虚拟机自带的一种堆栈跟踪工具。jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式: 主要分为两个功能: a. 针 ...
分类:
编程语言 时间:
2019-01-28 12:09:59
阅读次数:
305
程序计数器: Java虚拟机栈 【示例1-1】: Java虚拟机栈内存溢出: Java方法执行动态内存模型图: 本地方法栈:与Java虚拟机栈的运行都是一致的,唯一的区别是:Java虚拟机栈为虚拟机执行Java方法服务,而本地方法栈为虚拟机执行native方法服务。 Java堆:是虚拟机中管理内存最 ...
分类:
编程语言 时间:
2019-01-28 10:52:55
阅读次数:
195
一、前言 最近在看《深入java虚拟机》,看完后,打算自己实际编译一个jvm出来看看,实践一下。 书上提到了Oracle JDK和OpenJdk的关系,Oracle Jdk7 和OpenJdk 7共用了相当多的代码,所以还是很有学习的必要的: 二、环境 我这里的编译的操作系统是CentOS Linu ...
分类:
编程语言 时间:
2019-01-27 21:44:04
阅读次数:
559
Java 虚拟机的堆划分 Java 虚拟机将堆划分为新生代和老年代。其中新生代又被划分为 Eden 区,以及两个大小相同的 Survivor 区。 默认情况下,Java 虚拟机采取一种动态分配的策略,根据对象生成的速率,以及 Survivor 区的使用情况动态调整 Eden 区和 Survivor ...
分类:
其他好文 时间:
2019-01-26 23:07:27
阅读次数:
241