そのため、一見非同期のタスクを実行し、典型的なコールバック/リスナー モデルを使用してコールバックを受信するコードを使用しています。
私の問題は、操作を呼び出したスレッドを保持すると、コールバックが起動しない場合があることです。
次のコード スニペットを検討してください。
doAsync(new Callback(){
// Callback here
});
の内部でdoAsync()
は、ハンドラとmain looper
.
私がこのコードを呼び出すことを考えると、Thread A
誰かがThread A
この呼び出しの直後にブロックした場合の影響を概説してください。
また、ハンドラを実行するとどのような影響がありmain looper
、local looper
上記のコールバックが実行されるスレッドが決定されますか? Thread A
ブロックするとコールバックが実行されないため、これを尋ねます。