【发布时间】:2026-02-19 21:05:02
【问题描述】:
目前我正在尝试理解synchronized在Java中得到synchronized statements下的this java doc示例MsLunch类的示例和两个实例变量c1 and c2。
它说:
例如,假设类
MsLunch有两个实例字段c1和c2, 从不一起使用。这些字段的所有更新必须同步, 但是没有理由阻止c1的更新与c2的更新交错- 这样做会通过创建不必要的阻塞来降低并发性。
在我看来,这听起来像 c1 and c2 不允许一起使用。这就是为什么增加c1 and c2 的两个语句必须同步的原因。 但是为什么他们在下一句中说没有理由阻止c1 的更新与c2 的更新交错。这句话对我来说完全没有意义。首先他们说它们没有一起使用,现在可以增加c1,同时增加c2。
谁能给我详细说明一下这一段。
请记住,我的母语不是英语,实际上在理解这个问题时可能存在语言问题。
【问题讨论】:
-
您将“从不一起使用”误解为“不允许一起使用”。单独同步它们的建议并不是为了强制执行这样的规则,而是为了利用这种情况。
标签: java synchronized