Yes. This is why, if you use notify() rather than notifyAll(), it is important to make sure that every
thread the might be notified will call notify() again when it's done with whatever it needed to do. Otherwise, one of your waiting threads can just sit there forever.