E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Jvm学习
JVM内存管理和JVM垃圾回收机制
JVM学习
笔记JVM内存管理和JVM垃圾回收JVM内存组成结构JVM内存结构由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示: 1)堆所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx
laigous
·
2014-05-13 11:00
JVM学习
笔记-内存管理
第一章内存分配1.内存区域。 方法区和堆(线程共享),程序计数器,VM栈和本地方法栈(线程隔离)。 1)java虚拟机栈:线程私有。描述的是java方法执行的内存模型:栈帧,用户存储局部变量表,操作数栈,动态链接,方法出口等信息。 局部变量表在编译时即可完全确定!如果线程请求的栈深度大于规定的深度,StackOverflowError. 2)本地方法栈,类似。 3)堆:垃圾收集器管
gaotong2055
·
2014-05-09 21:00
jvm
jvm学习
笔记:JVM参数设置、分析
不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同
退役的龙弟弟
·
2014-04-17 22:00
jvm参数
jvm学习
笔记:3.5Java内存分配策略
一般把java堆分成新生代和老年代。垃圾回收器在新生代使用复制算法时:将新生代分成Eden和2个survivor。 简单来说,对象内存分配主要是在堆中分配。但是分配的规则并不是固定的,取决于使用的收集器组合以及JVM内存相关参数的设定一,对象优先在新生代Eden区分配/** * *类描述:对象优先在eden分配,以及minorgc垃圾清理 *jvm:-XX:+PrintGCDetail
退役的龙弟弟
·
2014-04-17 22:00
java内存分配
jvm学习
笔记:3.3垃圾收集算法
3.3.1标记-清除算法最基础的收集算法是“标记-清除”(Mark-Sweep)算法,如它的名字一样,算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象,它的标记过程其实在前一节讲述对象标记判定时已经基本介绍过了。之所以说它是最基础的收集算法,是因为后续的收集算法都是基于这种思路并对其缺点进行改进而得到的。它的主要缺点有两个:一个是效率问题,标
退役的龙弟弟
·
2014-04-17 17:00
学习笔记
jvm学习
笔记:第3章java判断对象是否死亡
3.2.2根搜索算法在主流的商用程序语言中(Java和C#,甚至包括前面提到的古老的Lisp),都是使用根搜索算法(GCRootsTracing)判定对象是否存活的。这个算法的基本思路就是通过一系列的名为“GCRoots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(ReferenceChain),当一个对象到GCRoots没有任何引用链相连(用图论的话来说就是从GCRoo
退役的龙弟弟
·
2014-04-17 14:00
java
jvm学习
笔记:第4章 虚拟机性能监控与故障处理工具
4.1 概述 给一个系统定位问题的时候,知识、经验是关键基础,数据是依据,工具是运用知识处理数据的手段。这里说的数据包括:运行日志、异常堆栈、GC日志、线程快照(threaddump/javacore文件)、堆转储快照(heapdump/hprof文件)等。 4.2JDK的命令行工具 这些命令工具大多数是jdk\lib
退役的龙弟弟
·
2014-04-16 16:00
学习笔记
JVM学习
总结五(番外)——VisualVM
距离上次介绍Jconsole已经时隔两周了,这期间由于工作中要用go来做一个新项目,所以精力都用在入门go上了,不过发现go语言用起来真的挺不错的,比python感觉还好点,大家没事可以了解下。 言归正传,VisualVM和Jconsole同是图形化的jvm监控和分析工具,两者在一些基本功能上的使用大同小异,比如内存、线程、jvm环境参数等,但是相对而言VisualVM的功能要稍强于Jcon
oO脾气不坏Oo
·
2014-04-13 20:00
java
jvm
visualvm
jvm学习
笔记:java运行时内存区域
转自:{之所以,扯淡}http://www.cnblogs.com/warden/archive/2012/11/18/2775874.html Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人想出来。运行时数据区域:Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有
退役的龙弟弟
·
2014-04-09 21:00
java
JVM学习
总结五(番外)——JConsole
之前本来打算结合自己写的小程序来介绍JConsole和VisualVM的使用的,但是发现很难通过一个程序把所有的场景都体现出来,所以还是决定用书中的典型小例子来讲更加清晰。一、JConsole的基本功能 JConsole是一个机遇JMX(JavaManagementExtensions,即Java管理扩展)的JVM监控与管理工具,监控主要体现在:堆栈内存、线程、CPU、类、VM信息这几个方面
oO脾气不坏Oo
·
2014-03-30 22:00
java
jvm
JConsole
jvm学习
笔记
阅读更多学习笔记HotSpot不区分虚拟机栈和本地方法栈,所以-Xoss参数(设置本地方法栈大小)虽然存在但是无效。栈容量只由-Xss参数设定StackOverflowEror:线程请求深度大于虚拟机所允许的最大深处OutOfMemoryError:虚拟机在扩展栈是无法获取足够的内存空间-Xms512m-Xmx512m-XX:+HeapDumpOnOutOfMemoryErrordemo/***-
zhang964761032
·
2014-03-25 13:00
jvm
java虚拟机
jvm学习
笔记
学习笔记 HotSpot不区分虚拟机栈和本地方法栈,所以-Xoss参数(设置本地方法栈大小)虽然存在但是无效。栈容量只由-Xss参数设定StackOverflowEror:线程请求深度大于虚拟机所允许的最大深处OutOfMemoryError:虚拟机在扩展栈是无法获取足够的内存空间 -Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError  
zhang964761032
·
2014-03-25 13:00
jvm
JAVA虚拟机
JVM学习
笔记(九):基于栈的解释器执行过程
本文根据《深入理解java虚拟机》第8章部分内容整理 根据一个代码实例来介绍虚拟机中解释器的执行过程,代码如下所示: Java代码 public int calculate(){ int a = 100; int b = 200; int c = 300; return (a + b) * c; } publicintcalculate(){ inta
yuan198906030
·
2014-03-23 22:00
学习笔记
JVM学习
笔记(八):类加载器以及双亲委派模型介绍
本章内容根据《深入理解Java虚拟机》第7章部分内容整理 1.什么是类加载器? 在类加载阶段,有一步是“通过类的全限定名来获取描述此类的二进制字节流”,而所谓的类加载器就是实现这个功能的一个代码模块,这个动作是在Java虚拟机外部实现的,这样做可以让应用程序自己决定如何去获取所需要的类。 类加载器的作用:首先类加载器可以实现最本质的功能即类的加载动作。同时,它还能够结合java类本身来确定
yuan198906030
·
2014-03-23 22:00
学习笔记
JVM学习
笔记(七):类加载的过程
本文根据《深入理解java虚拟机》第7章部分内容整理 在我的上一篇文章《
JVM学习
笔记(六):类加载的时机》中提到了java类从加载到卸载过程包括了加载(Loading)、验证(Verification
yuan198906030
·
2014-03-23 22:00
学习笔记
JVM学习
笔记(一):运行时数据区
运行时数据区 java虚拟机定义了若干种程序运行时使用到的运行时数据区1.有一些是 随虚拟机的启动而创建,随虚拟机的退出而销毁2.第二种则是与线程一一对应,随线程的开始和结束而创建和销毁。java虚拟机所管理的内存将会包括以下几个运行时数据区域 PC寄存器也叫程序计数器(ProgramCounterRegister)是一块较小的内存空间,它的作用可以看做是当先线程所执行的字节码的信号指示器。每一条
yuan198906030
·
2014-03-23 22:00
学习笔记
JVM学习
笔记(散列的知识点)
常见指令以及工具测试: jps 虚拟机进程状况工具 罗列所有进程 jstat 虚拟机统计信息工具进程jstat -gc uid times time jinfo jvm配置信息相关参数 jmap jvm内存映像工具 堆快照和对象统计信息-dump pid _文件路径,histo查看数量堆 jhat 堆内存快照分析工具 分析堆内存 jstack jvm栈查看工具 jstat
sharefling
·
2014-03-17 14:00
java
jvm
jvm学习
之dump堆栈信息
准备工具: eclipse 做如下参数设置: Windows->Preferences->Java->Installed JREs->Edit JRE, 这个时候设置Default VM arguments=-Xms2m -Xmx2m -XX:+HeapDumpOnOutOfMemoryError 上述参数设置的意思是:设置堆内存最小为2m,最大也为2m,并且在发生
xfxlch
·
2014-03-17 01:00
jvm dump
JVM学习
总结五——性能监控及故障处理工具
之前扯了四篇理论,这一篇终于可以动动手了。本篇我们将介绍JVM常用的一些工具,这些工具将是我们监控JVM状态、处理故障和调优分析的利器。 不过在开始之前,我还是要先车扯两句:工具终归只是帮助我们我们处理问题的,想要快速准确的解决问题,最为关键的还是对内在理论的理解和丰富的实践经验,所以如果对JVM的内存处理机制不了解,还是要用心学习一下。好了, 子曰:“工欲善其事,必先利其器。“,下边开始介绍
oO脾气不坏Oo
·
2014-03-16 00:00
java
jvm
jps
Java虚拟机
JVM学习
07 类的卸载机制
原文链接:http://www.cnblogs.com/mengdd/p/3594608.htmlJava虚拟机
JVM学习
07类的卸载机制类的生命周期当Sample类被加载、连接和初始化后,它的生命周期就开始了
weixin_30896763
·
2014-03-11 18:00
jvm学习
0.0.1
1.什么是全限定名和非全限定名 权限点名是指在整个JVM中的绝对名称,譬如:"java.lang.object",而非全限定名是指当前环境(譬如当前类)中的相对名称,譬如"Object"2.对于如下方法:publicTestDO(Longid){this.id=id;}它在jvm中的方法描述符是这样的Name就是指方法名称Descriptor中;号前面的部分是参数类型,;号后面的部分是方法返回值A
xfxlch
·
2014-03-11 02:00
jvm
JVM学习
总结四——内存分配策略
之前几篇我们介绍了jvm的内存模型以及垃圾回收机制,而本篇我们将介绍几个JVM中对象在分配内存是应该遵循的策略。毕竟,想要去优化程序,不仅要考虑垃圾回收的过程,还要从对象内存分配的角度减少gc的代价。一、gc日志格式 在这里先介绍一下gc日志的格式,分析gc日志是了解gc过程最直接的方式。对于大量的日志分析,直接查看日志文件当然不方便,我们一般会使用日志分析工具,后边会有介绍,但是对于简短的
oO脾气不坏Oo
·
2014-03-09 18:00
java
jvm
GC
JVM学习
总结三——垃圾回收器
整两天再看调优分析的部分,发现实际运行环境下,还是要考虑配置垃圾回收器,所以这里就加一小章介绍一下。 首先来看一下HotSpot所支持回收期的关系图: 图中可以看到一共有7中垃圾回收器,以中间绿线为界,上边三个用于年轻代,下边三个用在年老代,而G1则老少通吃,黑线线表示两个回收器可搭配使用,红线则表示两者可以在同一区域交替使用。由于G1在JDK1.7才达到商用级别,而且目前线上环境也很少使
oO脾气不坏Oo
·
2014-03-06 00:00
java
jvm
JVM学习
总结二——垃圾回收算法
昨天总结了JVM内存分区相关的知识,这次我们将来了解下JVM的另一个核心知识点——垃圾回收算法。这一部分其实并不太难,如果对操作系统的内存处理算法有所了解,那么这部分算法其实只看名字就能明白,两者在原理上是一样的,而且JVM的相对更为简单点。 在初学JVM的时候,我们往往会对这部分感到迷惑:网上不少博客介绍的五花八门,像引用计数算法、串行、并行、并发算法等,他们到底算不算垃圾回收算法,算的话
oO脾气不坏Oo
·
2014-03-02 22:00
java
jvm
JVM学习
总结一——内存模型
以下是个人读书后整理的知识点,同时参考并引用了以下博客:
JVM学习
笔记JVM性能优化JVM调优总结Java虚拟机学习一、J
oO脾气不坏Oo
·
2014-03-02 01:00
java
jvm
Java虚拟机
JVM学习
05 类加载器的父委托机制
原文链接:http://www.cnblogs.com/mengdd/p/3562540.htmlJava虚拟机
JVM学习
05类加载器的父委托机制类加载器类加载器用来把类加载到Java虚拟机中。
weixin_30354675
·
2014-02-23 21:00
JVM学习
笔记
一.走进Java1.JavaEE方向的Java语言学习大致可分为三部分: a)支撑Java程序运行的虚拟机 b)为各开发领域提供接口支持的javaAPI c)Java语言及第三方Java框架(如Struts,Spring等)2.为什么必须掌握JVM?一般情况下,程序员只要了解必要的JavaAPI,Java语法,并学会使用一些第三方的开发框架,就已经能基本满足日程开发的需要。那么为什么要深入
doudou_001
·
2014-02-18 22:00
JVM性能调优
推荐GameKing的
JVM学习
笔记系列 和 cprime,更加细致0.JVM体系结构简介JVMSpecification中的JVM整体架构主要包括两个子系统和两个组件,ClassLoader(类装载)
chape
·
2014-02-18 14:00
JVM学习
笔记之终:MyEclipse调优
在将工作电脑的操作系统更换为win7之后,我的MyEclipse的启动速度和运行速率一直很不理想。特别是在同时修改调试多个页面模板的时候,来回切换两个文件总是会卡个十来秒。试过关掉各种插件和验证也无济于事。于是在大致的研究完JVM后,决定从JVM的角度来试着解决这个问题。 启动优化: 首先来看下我的myeclipse.ini里面的默认启动参数:-Xmx512m :设置堆内存最大值为51
GameKing
·
2014-02-17 16:00
jvm
MyEclipse
调优
JVM学习
笔记之四:分代垃圾回收
如图所示,在HotSpot虚拟机中共划分有三个代:年轻代(younggeneration),年老代(oldgeneration)和持久代(permanentgeneration)。实际上真正有意义的是年轻代和年老代,对象的生成与消亡都发生在这两个区域。 持久代(permanentgeneration) 在开始介绍年轻代和年老代之前,先来说一说持久代吧。 持久代的主要作用是
GameKing
·
2014-02-12 17:00
jvm
堆
分代垃圾回收
JVM学习
笔记之三:垃圾回收算法
在开始之前,需要明确的一点是,这里谈到的垃圾回收算法针对的是JVM的堆内存,栈基本上不存在垃圾回收方面的困扰。 基本垃圾回收算法 1.引用计数算法(ReferenceCounting): 一种早期的垃圾回收算法。在此方法中,堆中的每一个对象都会有一个引用计数值,该对象每增加一个引用的时候,该计数加一,反之则减一。在执行垃圾回收时,那些引用计数值为0的对象将会被回收。这种方法的一个
GameKing
·
2014-02-10 17:00
jvm
算法
垃圾回收
JVM学习
笔记之二:栈和堆
栈 栈是java程序运行的关键,在java中,每一个线程都会有一个与之对应的线程栈。它是由许多栈帧(stackframe)或者说帧(frame)组成的,一个栈帧包含一个java方法调用的状态。当线程调用一个java方法时,虚拟机压入一个新的栈帧到该线程的java栈中,当该方法返回时,这个栈帧被从java栈中弹出并抛弃。总结起来就是,栈负责java程序运行过程中的进程和程序处理逻辑的控制。
GameKing
·
2014-01-24 17:00
java
jvm
栈
堆
jvm学习
文章
优化吞吐量、高响应: http://blog.csdn.net/zhoutao198712/article/category/1194642 Serial GC http://hllvm.group.iteye.com/group/topic/39376#post-257329 RednaxelaFX博客 http://rednaxelafx.iteye.com/
zheng19851
·
2014-01-16 14:00
java
jvm
JVM学习
笔记之一:体系结构
jvm的全称是JavaVirtualMachine,即java虚拟机,它是构建于操作系统内存中一个虚拟软件,用于支持java程序的运行,是java之所以能够跨平台的关键。对java开发者来说,jvm既重要,又不重要。说它重要是因为我们的每一个程序,每一行代码,都必须通过它才能运行。说他不重要则是因为就算对它一无所知,实际上也不影响绝大部分java开发者日常工作。但是作为一个开发者,对技术孜孜不
GameKing
·
2014-01-13 09:00
java
jvm
体系结构
JVM学习
---JAVA内存
一、JAVA运行时数据区域:JAVA中的运行时内存区域有的随着虚拟机进程的启动而存在,有的区域则是依赖用户线程的启动和结束而建立和销毁的。包括以下的几个区域。图.JAVA虚拟机运行时数据区1.程序计数器:线程私有的内存。作用是当前线程所执行的字节码的行号指示器。多线程是通过线程轮流切换并分配处理器执行时间的方式实现,通过程序计数器为线程切换后能恢复到正确的执行位置。每条线程都需要有一个独立的程序计
dyllove98
·
2013-12-04 13:00
JVM学习
笔记-内存管理及垃圾回收
JVM学习
笔记之JVM内存管理和JVM垃圾回收的概念,JVM内存结构由堆、栈、本地方法栈、方法区等部分组成,另外JVM分别对新生代和旧生代采用不同的垃圾回收机制。
叶落伤城1
·
2013-11-21 15:50
java
JVM学习
笔记-内存管理及垃圾回收
JVM学习
笔记之JVM内存管理和JVM垃圾回收的概念,JVM内存结构由堆、栈、本地方法栈、方法区等部分组成,另外JVM分别对新生代和旧生代采用不同的垃圾回收机制。
ckao7470
·
2013-11-21 15:00
java之
jvm学习
笔记八(实践对jar包的代码签名)
欢迎装载请说明出处:http://blog.csdn.net/yfqnihao/article/details/8267669课程源码:http://download.csdn.net/detail/yfqnihao/4866500这一节,以实践为主,在跟着我做相应的操作之前,我希望你已经能够理解笔记七所提到的概念,至少你应该对于笔记七的那个大图有所了解。好了!对于习惯用ecplise的朋友今天不
鹅
·
2013-10-25 09:32
安全
加密
JVM学习
之两种异常StackOverflowError和OutOfMemoryError产生的原因
今天学习了一下JVM原理的前两章,后续还会继续学习。其中两类异常的产生原理,记录一下。StackOverflowError产生的原因是如果是线程请求的栈深度大于虚拟机所允许的深度,则抛出这个异常。OutOfMemoryError产生的原因是当扩展时无法申请到足够的内存时抛出次异常,OOM异常也是比较常见的异常之一。
yongjian_luo
·
2013-09-23 18:00
JVM学习
之-JVM内存结构
1.1 JVM运行ClassLoader->RUNNTIMEDATAAREA->EXECUTIONENGINE->NATIVEINTERFACE->NATIVELIBRARIESClassLoader:负责加载类到内存RUNNTIMEDATAAREA:负责EXECUTIONENGINE: 解释器Interpreter,负责解释命令,提交到操作系统NATIVEINTERFACE: 在NATI
natian306
·
2013-09-12 00:00
jvm
内存结构
JVM学习
-1 用Netbeans调试hotspot (转)
转自:http://hatedance.iteye.com/blog/1389131我打算认真学习一下JVM,在网上搜索了一番,发现有人配置从成功用NetBeans调试HotspotJVM.重点参考文章:http://weblogs.java.net/blog/simonis/archive/2008/01/hotspot_develop_1.htmlhttp://blog.csdn.net/fa
kexinmei
·
2013-08-24 13:00
深入理解
JVM学习
笔记——第十三章 线程安全与锁优化
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十三章 线程安全与锁优化 1."当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协同操作,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程
bsr1983
·
2013-08-15 14:00
线程安全
深入理解
JVM学习
笔记——第十三章 线程安全与锁优化
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十三章 线程安全与锁优化 1."当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协同操作,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程
bsr1983
·
2013-08-15 14:00
线程安全
深入理解
JVM学习
笔记——第十三章 线程安全与锁优化
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十三章 线程安全与锁优化 1."当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协同操作,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程
bsr1983
·
2013-08-15 14:00
线程安全
深入理解
JVM学习
笔记——第十三章 线程安全与锁优化
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十三章 线程安全与锁优化 1."当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协同操作,调用这个对象的行为都可以获得正确的结果,那这个对象就是线程
bsr1983
·
2013-08-15 14:00
线程安全
深入理解
JVM学习
笔记——第十二章 Java内存模型与线程
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了,第十二章Java内存模型与线程1.Java虚拟机规范中试图定义一种Java内存模型(JavaMemoryModel,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java在各种平台下都能达到一致的并发效果。2.Java内存模型的主要目标是定义程序中各个变量的访问规
bsr1983
·
2013-08-14 02:06
JVM
深入理解
JVM学习
笔记——第十二章 Java内存模型与线程
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十二章 Java内存模型与线程 1.Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java在各种平台下都能达到一致的并发效果。 &nbs
bsr1983
·
2013-08-14 02:00
java内存模型
深入理解
JVM学习
笔记——第十二章 Java内存模型与线程
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十二章 Java内存模型与线程 1.Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java在各种平台下都能达到一致的并发效果。 &nbs
bsr1983
·
2013-08-14 02:00
java内存模型
深入理解
JVM学习
笔记——第十二章 Java内存模型与线程
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十二章 Java内存模型与线程 1.Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java在各种平台下都能达到一致的并发效果。 &nbs
bsr1983
·
2013-08-14 02:00
java内存模型
深入理解
JVM学习
笔记——第十二章 Java内存模型与线程
注:本系列文章均摘录自《深入理解Java虚拟机:JVM高级特性与最佳实践》,作者周志明,我看的是第一版,现在第二版已经出了, 第十二章 Java内存模型与线程 1.Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java在各种平台下都能达到一致的并发效果。 &nbs
bsr1983
·
2013-08-14 02:00
java内存模型
上一页
20
21
22
23
24
25
26
27
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他