私のプロジェクトでは、バックグラウンド操作が完了するまで待つ必要があります。それまで、進捗ダイアログが表示されます。操作が完了した後、結果はリストに格納され、リストが作成されます。Androidでエラーが発生しました
すべてが(進行状況ダイアログとすべての)正常に動作しているようだが、待機中()、私のコードは、(スタックオーバーフローで見られる)
Runnable runnable = new Runnable() {
public void run() {
// wait(); This call wouldn't work
synchronized (this) {
wait(); // This call will work
}
}
};
で、バックグラウンド操作が完了した後、それがあります
public void handleMessage(android.os.Message msg) {
super.handleMessage(msg);
System.out.println("Doneee!!! Yup yes ");
pd.dismiss();
synchronized (runnable) {
runnable.notifyAll(); // this call will work
}
}
しかし、問題は、待機がハングアップしているということです。つまり、私もデバッグしようとすると、wait()は返されません。それは待ち状態にあるだけです。あなたは私にそれを手伝ってもらえますか?
ありがとうございます!
よろしく ニシン
本当に同期ブロックが必要ですか? – gulbrandr
私はsync文を削除しようとしました。それはエラーを返します。待機する前にオブジェクトがロックされていません。 – nithinreddy