【问题标题】:Is a private class parameter accessed through synchronized methods considered a 'synchronized object'?通过同步方法访问的私有类参数是否被视为“同步对象”?
【发布时间】:2013-08-16 16:31:48
【问题描述】:

如果仅通过同步方法访问单例的私有静态参数,是否将其视为“同步参数”?如果是公开的呢?我认为这两种情况都不是,因为我相信您只能将同步关键字放在标记的块和方法上,而不是参数上。如果参数在任何方面都是可变的(反射?),即使访问受到限制,如果不通过同步方法使用,它就有可能不同步。

【问题讨论】:

    标签: java synchronization singleton


    【解决方案1】:

    不,“同步对象”或“同步参数”没有明确定义的术语。您可能会发现有些人使用其中任何一个术语,但根据我的经验,它们不是语言规范的一部分,甚至通常用于具有特定含义。

    请记住,您在其上进行同步的监视器在概念上与其尝试同步的代码方面完全分开。例如,为了同步的目的,通常有一个对象只是,作为一个类型中所有可变状态的“守卫”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-06
      • 2023-03-14
      • 1970-01-01
      • 2012-06-13
      • 2012-03-13
      • 2012-12-16
      相关资源
      最近更新 更多