Fork me on GitHub
ShenWenFang


  • 首页

  • 标签

  • 分类

  • 归档

  • 搜索

HashMap 的详细分析

发表于 2018-06-03 | 分类于 HashMap | 阅读次数:
字数统计: 9,655 字 | 阅读时长 ≈ 37 分钟

HashMap 的详细分析

前言

这次我和大家一起学习HashMap,HashMap我们在工作中经常会使用,而且面试中也很频繁会问到,因为它里面蕴含着很多知识点,可以很好的考察个人基础。但一个这么重要的东西,我为什么没有在一开始就去学习它呢,因为它是由多种基础的数据结构和一些代码设计思想组成的。我们要学习了这些基础,再学习HashMap,这样我们才能更好的去理解它。古人云:无欲速,无见小利。欲速则不达,见小利则大事不成。

阅读全文 »

ConcurrentHashMap 的锁定分离技术

发表于 2018-06-03 | 分类于 ConcurrentHashMap | 阅读次数:
字数统计: 403 字 | 阅读时长 ≈ 1 分钟
ConcurrentHashMap的锁分离技术 ​ 对比上图,HashTable实现锁的方式是锁整个hash表,而ConcurrentHashMap的实现方式是锁桶(简单理解就是将整个hash表想象成一大缸水,现在将这大缸里的水分到了几个水桶里,hashTable每次都锁定这个大缸,而ConcurrentHashMap则每次只锁定其中一个 桶)。 ​ ConcurrentHashMap将hash表分为16个桶(默认值),诸如get,put,remove等常用操作只锁当前需要用到的桶。试想,原来 只能一个线程进入,现在却能同时16个写线程进入,并发性的提升是显而易见的。 ​ ...
阅读全文 »

ConcurrentHashMap的使用

发表于 2018-06-03 | 分类于 ConcurrentHashMap | 阅读次数:
字数统计: 809 字 | 阅读时长 ≈ 4 分钟

ConcurrentHashMap的使用

缓存的使用

  • 高性能本地缓存:对系统中常用到的业务数据放到缓存中以提高系统性能,限制是单服务器模式
  • 分布式缓存:常用分布式缓存技术memcached、redis等

ConcurrentHashMap就是常用的高并发下的缓存对象。

阅读全文 »

未命名

发表于 2018-06-03 | 阅读次数:
字数统计: 2,761 字 | 阅读时长 ≈ 13 分钟
ConcurrentHashMap扩容实现机制jdk8中,采用多线程扩容。整个扩容过程,通过CAS设置sizeCtl,transferIndex等变量协调多个线程进行并发扩容。 扩容相关的属性nextTable扩容期间,将table数组中的元素 迁移到 nextTable。 12345/** * The next table to use; non-null only while resizing. 扩容时,将table中的元素迁移至nextTable . 扩容时非空 */private transient volatile Node<K,V>[] nextTable; siz ...
阅读全文 »

ArrayList 源码分析

发表于 2018-06-03 | 分类于 ArrayList | 阅读次数:
字数统计: 2,810 字 | 阅读时长 ≈ 11 分钟

ArrayList 源码分析

mark

前言

以面试问答的形式学习我们的最常用的装载容器——ArrayList(源码分析基于JDK8)

阅读全文 »

ajax 请求

发表于 2018-06-03 | 分类于 jQuery | 阅读次数:
字数统计: 693 字 | 阅读时长 ≈ 3 分钟

ajax 请求

语法:在jq框架中使用jQuery.ajax(url,JSONSettings)方法来实现请求的发送和接收。

阅读全文 »

10 款最好的 Python IDE

发表于 2018-06-03 | 分类于 Python IDE | 阅读次数:
字数统计: 25 字 | 阅读时长 ≈ 1 分钟
10 款最好的 Python IDE Vim Eclipse PyDev Sublime Text Emacs Komodo PyCharm Wing PyScripter The Eric Python IDE Interactive Editor for Python
阅读全文 »

(两到三年)Java 面试精髓

发表于 2018-06-03 | 分类于 基础面试题 | 阅读次数:
字数统计: 6,460 字 | 阅读时长 ≈ 23 分钟

(两到三年)Java 面试精髓

引言:

工作两到三年。在面试的时候,其实会对我们平时所有用框架的源码和一些功能底层代码实现给出提问。

阅读全文 »
1…1112
ShenWenFang

ShenWenFang

每一个你不满意的现在,都有一个你没有努力的曾经。

96 日志
36 分类
23 标签
RSS
© 2017 — 2020 ShenWenFang