But the notify method of execution in the calling thread lock. Notify () did not immediately release the object obj lock, after all this code or perform in a synchronized synchronous in the code, release movement is actually the execution of the lock. After notify and releases the lock when you leave the synchronized code block, so after the notify method, synchronized code block before the end, all other awakened, waiting for the object obj lock thread is still blocked,