【发布时间】:2014-08-23 15:22:44
【问题描述】:
我读过 thread safety for static variables 我理解并同意,但是
在书中 java se 7 程序员考试 804 有人可以给我解释一下
public void run() {
synchronized(SharedCounter.class) {
SharedCounter.count++;
}
}
但是,此代码效率低下,因为它获取并释放 每次加锁只是为了增加count的值。
谁能给我解释一下上面的引述
【问题讨论】:
-
简单地说,是什么让我在上面的代码中感到困惑......“类上的同步块是否使它的静态变量不受数据竞争的影响?”
-
安全的是总是使用同步块访问共享计数变量,并且总是使用same对象作为监视器。无论此监视器是
SharedCounter.class还是任何其他对象都不会改变任何内容。 -
为什么投反对票,这样我下次就可以知道我做错了什么谢谢
标签: java thread-safety