- 博客(5)
- 资源 (6)
- 收藏
- 关注
转载 Java 理论与实践: 处理 InterruptedException
Java 理论与实践: 处理 InterruptedException注:这里仅转了文章开头部分内容,详细内容请查看原网页。这样的情景您也许并不陌生:您在编写一个测试程序,程序需要暂停一段时间,于是调用Thread.sleep()。但是编译器或 IDE 报错说没有处理检查到的InterruptedException。InterruptedException 是什么呢,为什么
2015-03-30 15:53:18 979
原创 ThreadLocal源码解析
ThreadLocal经常被使用到,但是一直没有研究过它的实现原理。在看源码之前,我猜测它是这样设计的:ThreadLocal中包含一个Map<Thread,Map<ThreadLocal, V>>属性,在使用时,通过Thread.currentThread()获取到当前线程,从而根据Key,找到Map<ThreadLocal, V>,后来发现是错的。所以本文通过阅读JDK1.7源码,来解析ThreadLocal的设计思想和原理。
2015-03-28 19:53:13 1054
原创 sun.misc.Unsafe源代码
转自:源码剖析之sun.misc.Unsafe Unsafe类提供了硬件级别的原子操作,Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能。Java并发包(java.util.concurrent)中大量使用了CAS操作,涉及到并发的地方都调用了sun.misc.Unsafe类方法进行CAS操作。Unsafe类还提供了volat
2015-03-26 16:35:33 3142
原创 大端小端模式
1.大端小端格式详解为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了8bit的char之外,还有16bit的short型,32bit的long型(要看具体的编译器),另外,对于位数大于8位的处理器,例如16位或者32位的处理器,由于寄存器宽度大于一个字节,那么必然存在着一个如果将多个字节安排的问题
2015-03-21 18:42:05 880
原创 ConcurrentHashMap源码分析
ConcurrentHashMap是HashMap更高效的线程安全版本的实现。不同于Hashtable简单的将所有方法标记为synchronized,它将内部数组分成多个Segment,每个Segment又是一个特殊的hash表,这样设计是为了减少锁粒度。另外它内部通过精巧的实现,让很多读操作(get(),size()等)甚至不需要上锁。
2015-03-09 11:33:13 1171
OpenGL程序用的库文件.dll .h .lib文件
2009-12-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人