堆(Heap)之所以这个结构称为堆,是因为它不以任何人为指定的逻辑顺序进行排列。而是按照分区组队数据进行组织。也就是说,是按照磁盘的物理顺序。只要需要读取的数据文件没有文件系统碎片(注意和下面提到的索引的碎片区分),这个读取过程在磁盘中就可以连续的进行,没有多余的磁盘臂移动。而磁盘臂移动是I/O操作...
分类:
数据库 时间:
2015-06-14 19:48:35
阅读次数:
142
Java栈和堆 ----这两个概念未知很长一段时间,终于找到了一个很好的文本。使用和共享 1. 堆(stack)堆(heap)他们是Java使用Ram本地存储的数据。与C++不同,Java主动管理自己的栈和堆,程序猿不能直接设置堆栈或堆。 2. 栈的优势是,存取速度比堆要快。仅次于直接位于CPU中的...
分类:
编程语言 时间:
2015-06-13 16:50:37
阅读次数:
127
首先:二进制日志会记录所有与mysql有关的日志记录,包括innodb myisam heap等其他引擎的日志。而innodb引擎的重做日志只记录与其有关的事务日志。其次:记录的内容不同,不管你将二进制日志文件的格式设为statement 还是 row,又或者是mixed,其记录的都是关于一个事物的...
分类:
数据库 时间:
2015-06-12 14:45:34
阅读次数:
166
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。...
分类:
其他好文 时间:
2015-06-12 14:34:54
阅读次数:
78
Java GC(garbage collec,垃圾收集,回收)GC是对JVM中的内存进行标记和回收,Sun公司的JDK用的虚拟机都是HotSpot对象化的实例是放在heap堆内存中的,这里讲的分代收集也是指对堆内存的回收GC的分代收集分为:年轻代、老年代、永久代。(方法区是被当做永久代的,不过JDK...
分类:
编程语言 时间:
2015-06-12 06:22:16
阅读次数:
412
regedit状态位:0x02001000, 0x2,此时为常规页堆,但感觉无法准确输出call stack,-p -a访问失败,dph_block_information不准确.regedit状态位:0x02001000, 0x3,此时为完全页堆,完全页堆中heap -l命令不可用、 heap -...
分类:
数据库 时间:
2015-06-09 21:52:24
阅读次数:
283
首先堆栈和堆(托管堆)都在进程的虚拟内存中。(在32位处理器上每个进程的虚拟内存为4GB)堆栈stack堆栈中存储值类型。堆栈实际上是向下填充,即由高内存地址指向低内存地址填充。堆栈的工作方式是先分配内存的变量后释放(先进后出原则)。堆栈中的变量是从下向上释放,这样就保证了堆栈中先进后出的规则不与变...
1、 劣势:创建和释放Direct Buffer的代价比Heap Buffer得要高; 2、 区别:Direct Buffer不是分配在堆上的,它不被GC直接管理(但Direct Buffer的JAVA对象是归GC管理的,只要GC回收了它的JAVA对象,操作系统才会释放Direct Buffer所申请的空间),它似乎给人感觉是“内核缓冲区(buffer in kernel)”。Heap Buffe...
分类:
其他好文 时间:
2015-06-09 13:48:08
阅读次数:
404
一处内存泄漏:
稳定性测试抛出了内存泄漏问题,内存在24小时内从150M涨至350M
上测试机排查:
!heap -l
发现大量28字节,18字节左右的小内存泄漏db看一下泄漏内容
大量的内存地址指向swmanager\0 这个字符串,代码中搜索swmanager” 发现有10几处使用裸的字符串。
咨询对应的研发RD发现其中关于tips逻辑引用最频繁:
该处为在...
分类:
其他好文 时间:
2015-06-09 09:55:26
阅读次数:
129