Don't create a new thread. Wait on condition