当前位置: 代码迷 >> J2SE >> 请问静态变量的线程安全有关问题
  详细解决方案

请问静态变量的线程安全有关问题

热度:61   发布时间:2016-04-24 15:05:41.0
请教静态变量的线程安全问题
程序用到一个static   HashMap储存一些数据,有两个线程会访问到它,这两个线程是不相干的,现在可能会出现这种情况:就是两个线程同时操作此变量,因此会发生异常java.util.ConcurrentModificationException
请问有什么办法解决?使同一时间只能有一个线程操作此变量,synchronized好像只能对同一个Object加锁

------解决方案--------------------
可以在static HashMap对象是加入Collections.synchronizedCollection()修饰,这时HashMap的对象就会成为线程安全的对象
------解决方案--------------------
可以把对变量的操作写在一个方法里。然后synchronized,
  相关解决方案