0
new Thread("setWallpaperDimension") {
    public void run() {
        mWallpaperManager.suggestDesiredDimensions(mWallpaperWidth, mWallpaperHeight);
    }
}.start();

上記のコードは、launcher2 のソース コードで見たものです。#suggestDesiredDimensions メソッドが新しいスレッドで呼び出される理由を知りたいのですが、新しいスレッドを開始せずに直接呼び出すことはできますか? ありがとう!

4

1 に答える 1

1

確かにできますが、逆の場合にのみ問題が発生する可能性があります (非 ui スレッドから ui スレッドのみの関数を呼び出す)。

しかしもちろん、これが新しいスレッドで呼び出されるのにはパフォーマンス上の理由があるかもしれません。UIの応答性に影響を与える可能性のある再計算やものをトリガーしている可能性があります...

于 2013-03-23T12:17:14.030 に答える