|
|
1
15
是的,使用同步的单端Java程序 也许 要比没有同步时稍微慢一点。对于早期的Java版本,同步成本很高。但是,对于任何现代版本, 无争议 同步非常便宜。我不担心这个。
有关更多信息,请参阅 Java SE 6 Performance White Paper . 还请注意,多核CPU上的非竞争性同步似乎比单核CPU上的更昂贵,这可能是因为Java内存模型对同步的要求迫使本地CPU缓存与其他CPU共享,或者其他一些内存障碍。例如,阅读 Do Java 6 threading optimizations actually work? - Part II . (第一部分没有第二部分那么有见地。) |
|
2
5
对由于维护锁的额外开销,它们会稍微慢一些。 |
|
|
3
0
在使用同步数据结构时,减速并不取决于阻塞的“程度”。获取或释放锁的动作很慢,因为它通常涉及系统调用之类的内容(上下文切换在任何平台上都很慢)。在JIT环境(如典型的JVM)中,当只有一个线程运行时,理论上可以优化所有锁/解锁调用,但当另一个线程启动时,必须正确地使其无效。
|
|
|
vitaminC · 执行程序时无法理解tryLock方法 2 年前 |
|
|
Ronald · 用Java同步此vs字段 3 年前 |
|
|
Uuuuuumm · 当一个方法被并发方法调用时,我如何同步运行它 3 年前 |
|
|
wpunkts · 如何使用外部信号控制视频播放的速度和方向 3 年前 |