文档章节

线程安全么?

lateron
 lateron
发布于 2013/07/02 09:35
字数 46
阅读 137
收藏 0
一个朋友给我发的,问我线程安全么?
public class Cache {
	   private Map cache = new HashMap() ; 
	   public Object get(String key) {
	      return cache.get(key);
	   }
	
	   public void reload(){
	      Map tempCache = loadFromDB(); 
	      cache = tempCache; // safe ?
	   }
}

© 著作权归作者所有

lateron

lateron

粉丝 172
博文 57
码字总数 44492
作品 1
海淀
私信 提问
加载中

评论(10)

lateron
lateron 博主

引用来自“四火”的评论

loadFromDB()这个方法不传参数,如果是不传参数的话,的确有线程安全问题。如果需要传递参数的话,应该不会有线程安全问题

cache 对象对其他线程的可见性,可以测试下。
四火
四火
loadFromDB()这个方法不传参数,如果是不传参数的话,的确有线程安全问题。如果需要传递参数的话,应该不会有线程安全问题
lateron
lateron 博主

引用来自“四火”的评论

引用来自“夕水溪下”的评论

引用来自“四火”的评论

我觉得安全

不安全

原因?

可见性。
四火
四火

引用来自“夕水溪下”的评论

引用来自“四火”的评论

我觉得安全

不安全

原因?
lateron
lateron 博主

引用来自“四火”的评论

我觉得安全

不安全
四火
四火
我觉得安全
lateron
lateron 博主

引用来自“源的开始”的评论

应该是安全的 cache 是私有的。 每个线程独享一份. 互不干扰. 可cache 并没有起到缓存共享. 不能被多个线程访问.

你没看懂
lateron
lateron 博主

引用来自“刘利民”的评论

貌似不安全。

当然不安全
源的开始
源的开始
应该是安全的 cache 是私有的。 每个线程独享一份. 互不干扰. 可cache 并没有起到缓存共享. 不能被多个线程访问.
刘利民
刘利民
貌似不安全。
java-线程安全和非线程安全区别理解

1. ArrayList:底层是数组结构,查询快,增删慢 LinkedList:底层结构是链表,查询慢,增删快 2. 线程安全和非线程安全 非线程安全是指多线程操作同一个对象可能会出现问题。 线程安全是多线程...

_追随我心
2018/03/18
0
0
Java集合中那些类是线程安全的

线程安全类 在集合框架中,有些类是线程安全的,这些都是jdk1.1中的出现的。在jdk1.2之后,就出现许许多多非线程安全的类。 下面是这些线程安全的同步的类: vector:就比arraylist多了个同步...

小风89
2016/07/20
77
0
什么是线程安全?

给“线程安全”下定义是件非常棘手的事儿。随便Google一下,就能得到成千上万像这样的定义: 1.“线程安全”的代码是指在多线程同时执行的情况下,依然能正常工作的代码。 2.一段代码,如...

忙碌的键盘
2016/10/28
203
2
Java 线程安全 和 非线程安全

ArrayList和Vector有什么区别?HashMap和HashTable有什么区别?StringBuilder和StringBuffer有什么区别?这些都是Java面试中常见的基础问题。 面对这样的问题,回答是:ArrayList是非线程安全...

空云万里晴
2013/09/12
509
1
“线程安全”以上或以外 - 没有止境的道路

线程安全到底是什么意思? 现在的线程安全,流行的说法应该指的是保证类在多线程环境下的语义保持性。即:即使在多线程环境下,类的原始语义仍然得到保留。即,类不会在多线程环境下表现出跟...

刘小兵2014
2012/12/19
30
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
14
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
15
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部