【发布时间】:2011-11-18 13:04:19
【问题描述】:
class ABC implements Runnable {
private static int a;
private static int b;
public void run() {
}
}
我有一个如上所述的 Java 类。我有这个类的多个线程。在run() 方法中,变量a 和b 分别递增数次。在每次增量时,我都会将这些变量放入一个 Hashtable 中。
因此,每个线程都会增加这两个变量并将它们放入哈希表中。如何使这些操作线程安全?
【问题讨论】:
-
@Frozen Spider @Bohemian @Nim in book java se 7 程序员考试 804 有人可以向我解释
public void run() { synchronized(SharedCounter.class) { SharedCounter.count++; } }但是,这段代码效率低下,因为它每次都获取和释放锁只是为了增加计数的值。 -
@shareef 评论不是用来提问的。相反,ask a new question
-
@Bohemian 这是我的问题stackoverflow.com/questions/25463440/…
标签: java multithreading thread-safety