小凉

3 0642700 3 0642770 5 34202 13942 4314 0624

2016年4月11日

并发编程初探-线程安全性

摘要: 在Java并发编程中,对于线程安全是非常重要的,也是必须要考虑的一个问题.可以这么说,只要涉及到网络的,都必须考虑线程安全问题.好了,开始噼里啪啦地开始敲代码之前,我觉得有必要了解一些文绉绉的理论知识,因为这些理论知识是我们敲出来的代码是否是线程安全的一个依据. 当多个线程访问某个状态变量并且其中有 阅读全文

posted @ 2016-04-11 22:15 小凉 阅读(413) 评论(0) 推荐(0) 编辑

2016年4月10日

JVM-并发-线程安全与锁优化

摘要: 线程安全与锁优化 1.线程安全 (1)当多个线程访问一个对象时,如果不考虑这些线程在执行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那么这个对象时是线程安全的。 (2)Java语言中的线程安全 a)可以将Java语言中 阅读全文

posted @ 2016-04-10 23:21 小凉 阅读(814) 评论(0) 推荐(0) 编辑

JVM-并发-线程

摘要: 线程 1.线程的实现 (1)实现线程主要有3中方式:使用内核线程实现,使用用户线程实现和使用用户线程加轻量级进程混合实现。 (2)使用内核线程实现 内核线程就是直接由操作系统内核支持的线程,这种线程由内核来完成线程切换,内核通过操纵调度器对线程进行调度,并负责将线程映射到处理器上。 局限性:由于是基 阅读全文

posted @ 2016-04-10 16:50 小凉 阅读(859) 评论(0) 推荐(0) 编辑

2016年4月9日

JVM-并发-Java 内存模型

摘要: Java内存模型 (1). 主内存与工作内存 Java内存模型规定了所有的变量都存储在主内存中. 每类线程的变量的主内存副本拷贝,线程对变量的所有操作(读操作,赋值操作等)都必须工作内存中进行,而不能直接读写主内存中的变量. 不同的线程之间无法直接访问对方工作内存中的变量,线程间变量的传递均需要通过 阅读全文

posted @ 2016-04-09 18:54 小凉 阅读(635) 评论(0) 推荐(0) 编辑

2016年4月7日

JVM-程序编译与代码晚期(运行期)优化

摘要: 晚期(运行期)优化 1.为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器称为即时编译器(Just In Time,JIT编译器)。 2.Hotspot虚拟机内的即时编译器 (1)解释器与编译器 主流的商用虚拟机,如Ho 阅读全文

posted @ 2016-04-07 21:56 小凉 阅读(1332) 评论(0) 推荐(0) 编辑

2016年4月6日

JVM-程序编译与代码早期(编译期)优化

摘要: 早期(编译期)优化 一、Javac编译器 1.Javac的源代码与调试 Javac的源代码放在JDK_SRC_HOME/langtools/src/shares/classes/com/sun/tools/javac中,除了JDK自身的API之外,就只引用了JDK_SRC_HOME/langtool 阅读全文

posted @ 2016-04-06 21:41 小凉 阅读(653) 评论(0) 推荐(0) 编辑

2016年4月5日

JVM-字节码执行引擎

摘要: 虚拟机字节码执行引擎 一、运行时栈帧结构 1、栈帧(Stack Frame)是用于支持虚拟机进行调用和方法执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈(Virtual Method Stack)的栈元素,栈帧存储了方法的局部变量表,操作数栈,动态连接和方法返回地址等信息。 2.局部变量表(Lo 阅读全文

posted @ 2016-04-05 15:26 小凉 阅读(502) 评论(0) 推荐(0) 编辑

2016年4月4日

JVM-类加载机制

摘要: 虚拟机类加载机制 虚拟机把描述的类的数据从class文件加载到内存后,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 虚拟机类加载机制 虚拟机把描述的类的数据从class文件加载到内存后,并对数据进行校验,转换解析和初始化,最终形成可以被虚 阅读全文

posted @ 2016-04-04 22:58 小凉 阅读(742) 评论(0) 推荐(2) 编辑

JVM-字节码指令

摘要: Java虚拟机字节码指令 了解了class文件,我觉得就很有必要去了解一下JVM中的字节码指令,那样堆class文件以及JVM运行机制也后很大的帮助. Java虚拟机的指令由一个字节长度的,代表着某种特定操作含义的数字(称为操作码,Opcode)以及跟随其后的零至多个代表所需参数(称为操作数,Opr 阅读全文

posted @ 2016-04-04 15:44 小凉 阅读(1268) 评论(0) 推荐(0) 编辑

JVM-class文件完全解析-属性表集合

摘要: 属性表集合 在前面魔数,次版本号,主板本号,常量池入口,常量池,访问标志,类索引,父类索引,接口索引集合,字段表集合,方法表集合,那么接下来就是属性表集合了. 属性表集合 在前面魔数,次版本号,主板本号,常量池入口,常量池,访问标志,类索引,父类索引,接口索引集合,字段表集合,方法表集合,那么接下来 阅读全文

posted @ 2016-04-04 13:30 小凉 阅读(4215) 评论(0) 推荐(1) 编辑

导航