我们都知道。HashMap是非线程安全的(非同步的)。那么怎么才能让HashMap变成线程安全的呢?

我认为主要可以通过以下三种方法来实现:

1.替换成Hashtable,Hashtable通过对整个表上锁实现线程安全,因此效率比较低

2.使用Collections类的synchronizedMap方法包装一下。方法如下:

public static <K,V> Map<K,V> synchronizedMap(Map<K,V> m)  返回由指定映射支持的同步(线程安全的)映射

3.使用ConcurrentHashMap,它使用分段锁来保证线程安全

最新文章

  1. Axure RP = Axure Rapid Prototyping
  2. HTML5手机APP开发入门(1)
  3. Ibatis学习总结5--动态 Mapped Statement
  4. 基于Spring MVC的简单HelloWorld实例
  5. 编写 WPF DataGrid 列模板,实现更好的用户体验
  6. flex基础示例
  7. Excel地图插件(ExcelMaps)
  8. using MR to compute PageRank
  9. servlet总结:Servlet基础
  10. git 小乌龟安装教程
  11. UVA506-System Dependencies(拓扑序)
  12. Mac配置Java开发环境
  13. 全面理解Javascript闭包和闭包的几种写法及用途【转】
  14. 十二. Python基础(12)--生成器
  15. metasploit framework(四):生成payload
  16. 【探路者】Beta发布用户使用报告
  17. 使用Chrome快速实现数据的抓取(四)——优点
  18. STL与多线程+写时拷贝
  19. WebDav的java客户端开发包:sardine
  20. duplicate symbol _OBJC_IVAR

热门文章

  1. Lex与Yacc学习(七)之环境配置另一种方式
  2. 杭电 5748 Bellovin
  3. lombok安装、配置、使用
  4. 【SaltStack】SaltStack研究心得
  5. 大数据学习——sqoop导出数据
  6. TOJ 5021: Exchange Puzzle
  7. SQL处理XML
  8. redis2.3.7安装时出现undefined reference to `clock_gettime&#39;
  9. 【Luogu】P1410子序列(DP)
  10. 2014&#183;NOIP 新的历程,新的开始