>>969
notifyする側でsynchronizedブロック抜ける前になんかのフラグたてて、
wait終わったときにそのフラグ読み込むとかじゃだめかな?

waitObjectにboolean notifyFlagとか持たせて

// wait側
synchronized(waitObject)
{
try {
waitObject.wait(timeout);
} catch (InterruptedException e) {
// Thread.interrupted();
}

if (waitObject.notifyFlag) {
  // 処理B
} else {
// 処理A
}
}


// notify側
synchronized(waitObject)
{
waitObject.notifyFlag = true;
waitObject.notify();
}