これは Java に関する一般的な質問であり、Android に関する質問ではありません。
セカンダリ スレッドのコンテキストから、メイン スレッドでコードを実行する方法を知りたいです。例えば:
new Thread(new Runnable() {
public void run() {
//work out pi to 1,000 DP (takes a while!)
//print the result on the main thread
}
}).start();
そのようなこと-Javaでは何かを出力するためにメインスレッドにいる必要がなく、Swingにもイベントキューがあるため、私の例が少し貧弱であることを認識しています-しかし、必要になる可能性のある一般的な状況バックグラウンドスレッドのコンテキストで、メインスレッドで Runnable を実行します。
編集:比較のために-Objective-Cでそれを行う方法は次のとおりです:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0UL), ^{
//do background thread stuff
dispatch_async(dispatch_get_main_queue(), ^{
//update UI
});
});
前もって感謝します!