内存模型描述的是程序中各变量(实例域、静态域和数组元素)之间的关系,以及在实际计算机系统中将变量存储到内存和从内存取出变量这样的低层细节。每一个线程有一块工作内存区,其中保留了被所有线程共享的主内存中的变量的值的拷贝。为了存取一个共享的变量,一个线程通常先获取锁定并且清除它的工作内存区,这保证该共享...
分类:
编程语言 时间:
2014-07-21 23:30:41
阅读次数:
365
1.什么事内存泄露内存泄露就是对象不用了,但是无法回收该对象占用的内存。2.java不是有垃圾回收机制,咋还会发生内存泄露呢?java的垃圾回收机制就是把无用的对象(GC roots可达与否)用的内存回收,但是垃圾回收不是万能的,在一些场合会出现内存泄露,长对象持有短对象的引用,1、静态集合类1 S...
分类:
编程语言 时间:
2014-07-19 20:33:54
阅读次数:
180
hashCode方法的作用:当有一个对象要存入hash集合的时候,JVM首先会调用hashCode方法获取该对象的哈希值,然后根据哈希值找到相应的存储区域,最后取出该区域的所有元素与该对象进行equals比较,如果相等,不存入该元素,否则,存入。这样不用遍历集合中的所有元素就能的到我们想要的结果,提...
分类:
编程语言 时间:
2014-07-18 17:23:53
阅读次数:
244
想写这篇总结酝酿了有个来月了,却始终感觉还差点什么东西,一直未敢动笔。 最近两天连夜奋战,重新整理下前面查阅的资料、笔记,还是决定将它写出来。 现在提出几个问题,如果都能熟练回答的大虾,请您飘过.如以往一样,我是小菜,本文自然也是针对小菜阶层的总结。首先是概念层面的几个问题:Java中运...
分类:
编程语言 时间:
2014-07-17 21:34:12
阅读次数:
258
Java内存溢出详解一、常见的Java内存溢出有以下三种:1.java.lang.OutOfMemoryError: Java heap space----JVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不...
分类:
编程语言 时间:
2014-07-16 17:01:43
阅读次数:
304
实战Java内存泄漏问题分析 -- hazelcast2.0.3使用时内存泄漏 第一部分...
分类:
编程语言 时间:
2014-07-12 18:01:43
阅读次数:
264
实战Java内存泄漏问题分析 -- hazelcast2.0.3使用时内存泄漏 -- 2...
分类:
编程语言 时间:
2014-07-12 16:37:43
阅读次数:
334
从我出生那天起,我就知道我有个兄弟,他桀骜不驯,但实力强悍 ,人家都叫它C+++ ----java 上回说到了,C进程的内存分配,那么一个java运行过程也是一个进程,java内存是如何分配的呢?http://blog.csdn.net/shimiso/article/details/8...
分类:
编程语言 时间:
2014-07-03 00:49:38
阅读次数:
277
在介绍java内存模型之前,我们先看看两个内存模型
Sequential Consistency Memory Model:连续一致性模型。这个模型定义了程序执行的顺序和代码执行的顺序是一致的。也就是说 如果两个线程,一个线程T1对共享变量A进行写操作,另外一个线程T2对A进行读操作。如果线程T1在时间上先于T2执行,那么T2就可以看见T1修改之后的值。
这个内存模型比较简单,也比较直观,比较符合现实世界的逻辑。但是这个模型定义比较严格,在多处理器并发执行程序的时候,会严重的影响程序的性能。因为每次对共...
分类:
编程语言 时间:
2014-06-26 06:57:22
阅读次数:
538