java中if (){ wait();}else{},假如判断完if后wait了,notify后如何运行? 50
if(){wait();//在此wait,醒来后,会直接运行else里面的内容吗?}else{}...
if ()
{
wait();//在此wait,醒来后,会直接运行else里面的内容吗?
}
else
{
} 展开
{
wait();//在此wait,醒来后,会直接运行else里面的内容吗?
}
else
{
} 展开
1个回答
展开全部
1、如果一个线程调用了某个对象的wait方法,那么该线程进入到该对象的等待池中(并且已经将锁释放), 如果未来的某一时刻,另外一个线程调用了相同对象的notify方法或者notifyAll方法, 那么该等待池中的线程就会被唤起,然后进入到对象的锁池里面去获得该对象的锁, 如果获得锁成功后,那么该线程就会沿着wait方法之后的路径继续执行。注意是沿着wait方法之后 2.如果没有直接性的调用同类里的其他接口,或者返回,结束等java关键字,代码还是得往下执行的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询