是什么 leveldb内部实现的缓存 为什么要用 性能高于内嵌哈希表 学到什么 与(&)操作进行模运算 减少cache锁操作,可以分为多组cache 源码分析 LRUHandle 缓存中代表键值对的数据结构 // An entry is a variable length heap-allocate ...
分类:
数据库 时间:
2020-06-14 10:30:28
阅读次数:
63
1.堆【heap】 (1)堆总是一颗完全二叉树【深度为K,除了k层外,1~k-1层的结点数都达到最大值,k层所有的节点都连续集中在最左边的就是完全二叉树】 (2)堆 不是在程序编译时申请内存的,而是在程序运行时向操作系统申请内存空间,即动态分配内存空间,一般是申请/给予的过程; (3)堆通常可被看作 ...
分类:
其他好文 时间:
2020-06-13 10:35:03
阅读次数:
67
堆排序 堆排序的思想是先调用堆的inset方法,再调用堆的remove方法输出。 实现 for (i = 0; i < size; i++) heap.insert(array[i]); for (i = 0; i < size; i++) array[i] = heap.remove(); 效率 ...
分类:
编程语言 时间:
2020-06-12 01:13:05
阅读次数:
59
概述 一个进程对应一个JVM实例,一个运行时数据区,又包含多个线程,这些线程共享了方法区和堆,每个线程包含了程序计数器、本地方法栈和虚拟机栈 一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域 Java堆区在JVM启动的时候即被创建,其空间大小也就确定了。是JVM管理的最大一块内存空间 ...
分类:
其他好文 时间:
2020-06-09 16:31:47
阅读次数:
63
一、 堆(heap)和栈(stack) 栈(stack)会自动分配内存空间,会自动释放。堆(heap)动态分配的内存,大小不定也不会自动释放。 二、 基本类型和引用类型 基本类型:简单的数据段,存放在栈内存中,占据固定大小的空间。 引用类型:指那些可能由多个值构成的对象,保存在堆内存中,包含引用类型 ...
分类:
Web程序 时间:
2020-06-09 11:21:06
阅读次数:
100
文章来源:http://www.hollischuang.com/archives/303 jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。可以使用jmap生成Heap Dump。在Java命令学习系列(零)——常见命令及Ja ...
分类:
编程语言 时间:
2020-06-08 20:50:53
阅读次数:
86
> 文章来源:http://www.hollischuang.com/archives/1047 hat(Java Heap Analysis Tool),是一个用来分析java的堆情况的命令。之前的文章讲到过,使用jmap可以生成Java堆的Dump文件。生成dump文件之后就可以用jhat命令, ...
分类:
编程语言 时间:
2020-06-08 20:46:59
阅读次数:
79
需要抓紧时间的一周。 Algorithm: 215:Kth Largest Element in an Array (Medium) 这道题求第 k 大元素,类似于 top k,可以使用堆 heap,这里需要注意虽然逻辑上需要一个大小为 k 的小顶堆,但是实际上有个技巧是让它可以放下 k + 1 个 ...
分类:
其他好文 时间:
2020-06-06 12:45:10
阅读次数:
51
1. 基本概念 max_heap,min_heap是一颗堆树。其定义如下: (1) 堆树是一颗完全二叉树; (2) 根节点的值大于子节点(max_heap);对于·min_heap,根节点的值小于子节点; (3) 左右子树也是一颗堆树。 比如下面的完全二叉树,就是一个max_heap: 回想完全二叉 ...
分类:
其他好文 时间:
2020-06-05 00:32:23
阅读次数:
80
首先准备一个hadoop源码包,我选择的hadoop版本是:hadoop-2.7.7-src.tar.gz,在hadoop-2.7.7的源码包的根目录下有一个文档叫做BUILDING.txt,这其中说明了编译hadoop所需要的一些编译环境相关的东西。不同的hadoop版本的要求都不一样,对应的版本 ...
分类:
其他好文 时间:
2020-06-03 13:23:45
阅读次数:
63