Java Tutorial里讲的线程:
http://java.sun.com/docs/books/tutorial/essential/threads/waitAndNotify.html 没明白下面这一点:
如果consumer线程先执行,调用get后就获得了对象锁,
那么producer线程不就不能进入put方法了吗?
但我先启动consumer,延迟了一段时间再启动producer,
synchronized并没有起作用,仍然是先执行了put,后执行了get。为什么?
http://java.sun.com/docs/books/tutorial/essential/threads/waitAndNotify.html 没明白下面这一点:
如果consumer线程先执行,调用get后就获得了对象锁,
那么producer线程不就不能进入put方法了吗?
但我先启动consumer,延迟了一段时间再启动producer,
synchronized并没有起作用,仍然是先执行了put,后执行了get。为什么?
producer才能进入put方法