【发布时间】:2017-08-18 19:29:30
【问题描述】:
我想向您寻求高级同步方面的帮助。 我有这样的课:
public class Manager{
private ClassMatcher classMatcher;
public ClassMatcher getClassMatcher(){
return this.classMatcher;
}
public void setClassMatcher(ClassMatcher classMatcher){
this.classMatcher = classMatcher;
}
}
对象管理器可以被更多线程调用,所以方法:getClassMatcher和setClassMatcher应该同步。
但在这种情况下,方法 getClassMatcher 只能由一个线程同时访问。
有什么办法可以解决吗?
好吧,也许我可以使用 Locks 或 AtomicReferences。
感谢您的任何建议,这将非常有帮助
【问题讨论】:
-
为什么你认为setter需要同步,为什么你认为这样做会影响getter?
-
这种高级同步如何?还有,解决什么?使方法同步是处理多个线程访问
Manager类的一种方法。 -
如果没有清楚地描述如何使用它,实际上不可能提出正确的方法。您可能还想阅读stackoverflow.com/questions/11459543/…
标签: java methods synchronization atomic