5

私は熟考し、いくつかのコードをいじっていました。Thread クラスで次のメソッドを見つけました: checkAccess().

ドキュメントには(文字通り)「何もしない」と書かれています。何もしないのに、なぜこれが Thread クラスにあるのでしょうか? - 開発者の荒らしに対処している可能性はありますか?

スクリーンショット:

ここに画像の説明を入力

4

1 に答える 1

2

Thread.checkAccess()はコア Java API からのものであるため、Android同様に存在しますが、実装されていません。

Android のjava.lang.Thread.checkAccess()はSecurityManagerを信頼していないため、この実装を提供しません。

セキュリティ マネージャは、信頼できないコードを実行するための安全な環境を提供しません。信頼できないコードは、Dalvik VM 内で安全に分離できません。

そして、これがThread.checkAccessOpenJDK 内での実装方法です。

public final void checkAccess() {
    SecurityManager security = System.getSecurityManager();
    if (security != null) {
        security.checkAccess(this);
    }
}
于 2012-10-07T20:34:00.253 に答える