Java中的Singleton类,使成员变量线程安全,无需使用同步块
我有一个单例类和一个私有成员变量计数器。我有一个公共getCounter()方法,它将计数器递增1并返回它。我在web应用程序中使用这个单例类,所以我想使这个变量和方法成为线程安全的。但我不想使用同步方法或块。在我的Singleton类中,我们是否有其他oops方法来实现这种并发性?请参见(和其他),它有方法。我想这对你来说很理想 例如:Java中的Singleton类,使成员变量线程安全,无需使用同步块,java,Java,我有一个单例类和一个私有成员变量计数器。我有一个公共getCounter()方法,它将计数器递增1并返回它。我在web应用程序中使用这个单例类,所以我想使这个变量和方法成为线程安全的。但我不想使用同步方法或块。在我的Singleton类中,我们是否有其他oops方法来实现这种并发性?请参见(和其他),它有方法。我想这对你来说很理想 例如: import java.util.concurrent.atomic.AtomicInteger; class Singleton { // si
import java.util.concurrent.atomic.AtomicInteger;
class Singleton {
// singleton logic ommited
private AtomicInteger counter = new AtomicInteger();
public int getCounter() {
return counter.incrementAndGet();
}
}
看(和其他),它有方法。我想这对你来说很理想
例如:
import java.util.concurrent.atomic.AtomicInteger;
class Singleton {
// singleton logic ommited
private AtomicInteger counter = new AtomicInteger();
public int getCounter() {
return counter.incrementAndGet();
}
}
你可以用一个例子来增强你的答案,你可以把这个类和方法链接到相应的javadoc。非常感谢!!!我们是否可以在组合中使用其他oops概念来实现这种并发性?您可以通过一个示例来增强您的答案,并且可以将类和方法链接到相应的javadoc。非常感谢!!!我们是否可以在组合中使用其他oops概念来实现这种并发性?