每次我在非最终类别字段上进行同步时,都会显示警告。这是代码:
public class X
{
private Object o;
public void setO(Object o)
{
this.o = o;
}
public void x()
{
synchronized (o) // synchronization on a non-final field
{
}
}
}
所以我通过以下方式更改了编码:
public class X
{
private final Object o;
public X()
{
o = new Object();
}
public void x()
{
synchronized (o)
{
}
}
}
我不确定上面的代码是否是在非最终类字段上同步的正确方法。如何同步非最终字段?
慕桂英4014372
潇湘沐
相关分类