本帖最后由 rayeaster 于 2010-07-19 14:11:56 编辑

解决方案 »

  1.   

    你要是就是共享一个散列的话
    可以使用 ConcurrentHashMap
    里面的putIfAbsent/replace基本可以满足你的需求
      

  2.   

    其实不是一个散列,而是一个开源的java缓存:EHCache
    我不知道它内部是一个怎样的构造。拿散列表作比较也许不是非常精确。
    但是问题是类似的。
      

  3.   

    那就不是很清楚了哦
    你可以用ConcurrentHashMap做一个前置的容器
    所有需要访问缓存的操作都先经过ConcurrentHashMap
      

  4.   

    ConcurrentHashMap  很黄很暴力啊
      

  5.   

    怎么个很h很bl?展开来说说看?
      

  6.   

    问题没细看,但楼主你应该先分析哪里线程不安全 -> 那么就加上同步。
    你要是就是共享一个散列的话
    可以使用 ConcurrentHashMap感觉就问题分析上不要给别人一下子提供跳跃的回答!
    ConcurrentHashMap不仅仅是同步的散列容器,它还提供了提速,感觉给对方更切合实现的回答更好些。再个,你考虑这个前端的作用是什么? 仅仅为了同步? 如果是就是又浪费空间又费事。如果考虑的是batch的思路,还是值得推荐的。比较batch的效率是非常值得肯定的。