面试官: 有了解过线程组和线程优先级吗

前言

目前正在出一个Java多线程专题长期系列教程,从入门到进阶含源码解读, 篇幅会较多, 喜欢的话,给个关注❤️ ~

什么是线程组

在Java中,线程组使用ThreadGroup表示,其中Thread存于线程组中,从字面意思也很好理解。在创建线程过程中,Thread不能独立于线程组之外,之前我们学习创建线程时,没有指定线程组,因为在默认情况下,它会将当前的线程环境作为线程组, 可以通过Thread.currentThread().getThreadGroup()获取线程组,线程组可以方便管理我们的线程,一定程度上提高了安全性

public final void checkAccess() {
    SecurityManager security = System.getSecurityManager();
    if (security != null) {
        security.checkAccess(this);
    }
}

它调用了一个SecurityManager, 它是Java的安全管理器,它允许应用程序在执行一个可能不安全或敏感的操作前确定该操作是什么,以及是否是在允许执行该操作的安全上下文中执行它。应用程序可以允许或不允许该操作。总的来说就是保证安全性。

通过上面的了解,我们应该知道为什么要用这种树状结构了。它都是一层一层级别的控制,这么做方便去管理,提高安全性,出了问题也能很快的定位到。就像公司的人员组织架构一样,一切都是为了管理好公司。

结束语

本篇内容到这里就结束了, 大家自己一定要多去理解,不要去背, 下期给大家讲讲线程的状态以及它的生命周期~

往期内容推荐

项目源码(源码已更新 欢迎star⭐️)

  • java-thread-all

  • 地址: https://github.com/qiuChengleiy/java-thread-all.git

推荐 SpringBoot & SpringCloud (源码已更新 欢迎star⭐️)


本篇文章来源于微信公众号: 程序员皮卡秋



微信扫描下方的二维码阅读本文

此作者没有提供个人介绍
最后更新于 2023-06-27