use new wait/notify methods