锁定问题

时间:2011-04-06 14:47:30

标签: multithreading locking

我在类中有一个treeSet 它还提供了几种修改TreeSet集合的方法:

  1. addtoset
  2. removefrom set
  3. setitems
  4. 在addtoSet方法中,我需要检查项目是否已经存在于集合中,如果是,请不要添加新项目进行设置。

     public static void addto set(final String items){
        if(!set.contains(items){
       //do something
      }
     }
    
      public static boolean contains( final String items) {
    
        //check wether the items exists or not
        return channels.contains(channel);
     }
    

    我如何在集合中引入readWrite锁定??

1 个答案:

答案 0 :(得分:0)

假设这是Java代码,而(set)是一个静态对象......怎么样这样:

public static void addto_set(final String items) {
   synchronized(set) {
      if (!set.contains(items)) {
         // do something
      }
   }
}

(类似于contains()方法,以及访问(set)的任何其他方法)