HashMap发生碰撞(hash冲突)时如何解决?
HashMap存储达到阀值之后,如何扩容?
本文将从HashMap源码为你解答以上问题。...
分类:
其他好文 时间:
2015-03-31 12:53:13
阅读次数:
161
最近有被问及HashMap的相关问题,不得不再阅读源码,刨根问底。
1)初始值
我们平常使用Map的时候,创建的时候都是Map map = new HashMap();那么HashMap的默认大小是多少呢?查看源码,发现这么一段:
1234567891011121314151617 /** * The default initial capacity - MUST be a...
分类:
其他好文 时间:
2015-03-30 13:22:35
阅读次数:
175
在阅读源码的过程中,发现找不到fork函数的定义。后来在linux/init/main.c中找到了这样一条语句static inline _syscall0(int,fork)原来这里就是fork函数的定义。系统在linux/include/unistd.h有一个宏定义。#define _sysca...
分类:
系统相关 时间:
2015-03-17 13:53:26
阅读次数:
165
今天3月16日,今后一段时间工作与学习安排:主要专注在四个方面:Erlang语言的学习;Redis的使用和学习;Android端视频流相关项目研发;一些框架的源码阅读;1、Erlang语言已经学习了一段时间。总之没有用心。这个过程中发现了自己许多不足: a、Linux OS 命令,部署; ...
分类:
其他好文 时间:
2015-03-16 15:56:16
阅读次数:
138
jpbm4.4源码的包结构主要有七个,分为org.jbpm.api;org.jbpm.bpmn;org.jbpm.enterprise.internal;org.jbpm.internal.log;org.jbpm.jpdl.internal;pvm.internal;简而言之,api为接口,比如service、dao等的接口,bpmn定义了jbpm模型,比如task、end等节点的属性和动作,pvm即工..
分类:
其他好文 时间:
2015-03-15 07:13:33
阅读次数:
218
void 指针的步长为1,而其他类型的指针的步长与其所定义的数据结构有关。example: 1 #include 2 main() 3 { 4 int a[10]; 5 int *m=a; 6 void *n=(void *)a; 7 ...
分类:
系统相关 时间:
2015-03-13 16:16:51
阅读次数:
167
1. 启动类 QuorumPeerMain.java 集群方式:调用runFromConfig(QuorumPeerConfig config) 创建一个QuorumPeer 对象,并初始化设置其相关属性,如ZKDatabase,ServerCnxnFactory成员等。 ...
分类:
其他好文 时间:
2015-03-11 19:13:46
阅读次数:
146
首先Future系是对某个异步操作完成的监听;即setValue()的完成情况监听;get/setValue其实是对result字段封装,由此,可以这样讲,Future系其实对于对result字段状态的监听; Future又是如何被使用的的呢? 让我们看一下源码中举例: * IoSession se...
分类:
其他好文 时间:
2015-03-10 13:44:45
阅读次数:
106
jmpi是段间跳转指令,用于x86实模式下, 如:BOOTSEG = 0x0c70 jmpi 4, #BOOTSEG 假如当前段CS==00h,那么执行此指令后将跳转到段CS==0x0c70,当然段cs的值也变为0x0c70,接下来将执行指令0x0c70:0004处的指令。 实模式下寻址是为了兼容8...
分类:
系统相关 时间:
2015-03-10 13:43:52
阅读次数:
187
这两天刚好在等待分配的过程中想着创建自己的代码库的,但是后来想想世界如此之大,咱想到的东东各位大牛基本上都免费提供了,为哈不双手接上呢,鼓掌,感谢!好了,先说个 ArrayUtils 的大概吧:
顾名思义,这货就是用来进行 array 操作的哦。不过这个工具类很大有6000行左右的说,提供的功能也就相对来说比较完备的。大概有以下几大类方法(其实一般都是 overloading):
EMPTY_…...
分类:
其他好文 时间:
2015-03-09 10:56:35
阅读次数:
132