自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (1)
  • 收藏
  • 关注

【Java源码解读】Hashtable

源码来源:OpenJDK 10   简述 Hashtable实现了Map接口;Key和Value都不允许是null Hashtable的public方法都是用synchronized修饰,以达到线程安全的效果。 一般较少用Hashtable。 当没有线程安全的需求时,推荐使用HashMap; 当需要线程安全时,推荐使用并发性能更好的ConcurrentHashMap   其它...

2018-08-31 21:51:29 193

原创 【Java源码解读】HashMap

源码来源:OpenJDK 10   简述 HashMap实现了Map接口 与Hashtable不同处在于: HashMap允许null为key,允许null为value,而Hashtable则不支持 Hashtable线程安全,HashMap未同步化,所以线程不安全   关于性能 当所使用的Hash函数能使得所有元素均匀地分布到各哈希桶时,get和put这类基础操作的耗时可...

2018-08-20 14:49:26 199

【Java源码解读】Collections.synchronizedXxx

源码来源:OpenJDK 10   解读对象 synchronizedCollection(Collection<T> c) synchronizedList(List<T> list) synchronizedSet(Set<T> s) synchronizedSortedSet(SortedSet<T> s) synchroni...

2018-08-07 17:44:40 571

【Java源码解读】Vector

源码来源:OpenJDK 10   简述 Vector实现了List接口;大小可变 ArrayList是线程不安全的,Vector的方法线程安全。Vector的public方法多用synchronized修饰,无此修饰的方法的内部实现也使用了synchronized。除此之外,与ArrayList原理相同,实现大同小异。如果没有线程安全的需求,还是推荐使用ArrayList,以避免不必要...

2018-08-06 22:49:24 435

【Java源码解读】LinkedList

源码来源:OpenJDK 10   简述 LinkedList实现了List和Deque(双端队列)接口,它是一个双向链表。 当需要访问特定索引处的元素时,会选取离目标位置更近的一端开始遍历(从头部或尾部开始)。   关于线程安全/同步 与ArrayList类似,LinkedList线程不安全。如果在多线程场景下使用,且至少有一个线程会改变list的结构,就要像对待ArrayL...

2018-08-03 15:21:52 104

原创 【Java源码解读】ArrayList

源码来源:OpenJDK 10   简述 ArrayList实现了List接口;大小可变;允许有null元素;支持调整其内部用户存储数据的数组大小;与Vector比较相似,除了ArrayList不同步(多线程不安全)。   关于性能 size, isEmpty, get, set, iterator, listIterator等方法的时间复杂度都是O(1);add的时间复杂度是可...

2018-08-02 17:51:36 94

ZooKeeper实用分析.pptx

ZooKeeper实用分析。包括基础特性与核心原理分析。 典型案例分析、会话、监视与通知、基础API和高级封装库、客户端故障处理、服务角色、群首选举、多数原则、Zab协议、事务、快照、重配置等。

2020-01-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除