gpt4 book ai didi

java - 在数组上同步。它是在所有元素上同步还是在数组对象上同步?

转载 作者:行者123 更新时间:2023-11-29 07:58:45 25 4
gpt4 key购买 nike

如果我在数组上同步,这是否意味着我在同步其中的所有元素,或者我在同步数组对象?如果后者为真,那么我如何才能同时同步数组中的所有元素,以确保在执行某个 block 时不会访问 non?

例如假设我们有一组银行账户,我们希望确保在执行特定代码块时没有线程可以访问任何账户。

最佳答案

它在监视器上同步阵列本身。

即使您可以对所有元素进行同步,也不能确保它们未被访问 - 因为同步只是建议性的。

这里的解决方案可能是封装:根本不允许其他代码看到数组本身。这样,您就可以通过自己的方法(例如 ArrayList)控制其他代码如何访问数组的成员。

请注意,即使您执行了所有这些操作,也不会阻止其他代码在您的独占代码开始运行之前获取数组元素,然后在您的独占代码运行时使用该引用(例如,改变它所指的对象)。您并没有真正向我们提供太多关于您正在尝试做什么的信息,但您可能需要采取不同的方法。

关于java - 在数组上同步。它是在所有元素上同步还是在数组对象上同步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15860462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com