两个线程同时操作一个map,怎么弄啊?(代码和文字)

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【TechieFeng】截止到2008-07-10 14:13:39的历史汇总数据(不包括此帖):
    发帖的总数量:4                        发帖的总分数:45                       每贴平均分数:11                       
    回帖的总数量:1                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:2                        结贴的总分数:30                       
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:2                        未结的总分数:15                       
    结贴的百分比:50.00 %               结分的百分比:66.67 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主加油
      

  2.   

    Map m = Collections.synchronizedMap(new HashMap(...));
    同步一下,然后你就尽管操作好了。
      

  3.   

    Map m = Collections.synchronizedMap(new HashMap(...)); 
      

  4.   

    用HashTable吧。它是线程安全的。不用额外的处理
      

  5.   

    Map m = Collections.synchronizedMap(new HashMap()); 
    这个map就是同步的了,也就是说有线程在访问这个map的时候,另一个要访问它的线程就要等待不知道lz是不是要的这个结果,或者楼主的意思是怎样让2个线程共享同一个map ?
    那把一个map声明成静态就可以了
    public class MapWrapper{public static Map map=Collections.synchronizedMap(new HashMap()); 
    }//访问map的时候用下面的操作
    Map map=MapWrapper.map;