当时只有一个线程可以访问实例吗?

时间:2015-07-09 12:48:40

标签: java concurrency

我有一个java类:

class Card {

  private static Card instance = new Card();
  public int value:

  private Card() {}

  public static Card sharedInstange() {
     return instance;
  }

}

此类为可以由不同线程访问的共享实例建模。必须同步其实例变量值,以便一次只能读取和写入一个线程。

我怎样才能实现Card类的实例变量当时只能由一个线程访问?

编辑:这是与getter和setter相同的类。

class Card {

  private static Card instance = new Card();
  private int value:

  private Card() {}

  public static Card sharedInstange() {
     return instance;
  }

  public int getValue() { return value; }

  public void setValue(int v) { this.value = v; }

}

1 个答案:

答案 0 :(得分:1)

使其变得易变并创建没有synchronized关键字的getter / setter。

或者只是制作AtomicInteger