サンプル

public static class ClassA {
Condition c;
boolean flag;
public void methodA {
if(flag) {
try {
c.await();
} catch ( Exception e ) {
}
//...
}
}

}
解決策
await() を while ループ内に含めてください。

public static class ClassA {
Condition c;
boolean flag;
public void methodA {
while(flag) {
try {
c.await();
} catch ( Exception e ) {
}
//...
}
}

}