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 回答