代码如
synchronized (this)
{
mTimeOutRunnable = new Runnable()
{
@Override
public void run()
{
..some code
}
};
}
新的Runnable
类的引用分配由块覆盖,但是在run()内部的代码(在块外部调用 asyncronously )进入{{1阻止吗?
我首先包装在同步块中,因为这是从工作线程调用的,我想确保调用(主)线程也可以访问synchronized
对象。
答案 0 :(得分:5)
不,Runnable
阻止了mTimeOutRunnable
到synchronized
的分配,而不是run()
方法的后续调用。
答案 1 :(得分:1)
mTimeOutRunnable = new Runnable()
{
@Override
public void run()
{
..some code
}
};
与
相同synchronized(this){
obj = new SomeClass();
}
因此synchronized
块