星球面试问题

1、JVM运行时内存区域划分;

   答: 1.堆, 2.虚拟机栈  3.本地方法栈,4.方法区,5.程序计数器 

    程序计数器:1.小   2. 记录当前线程所执行的字节码的行号指示器,选取下一条执行的字节码  3.线程私有。

    java虚拟机栈:1.线程私有,生命周期与当前线程相同。 2.存储局部变量表、操作栈、动态链接、方法出口。 3.栈大小在编译器完成。

    本地方法栈:1.虚拟机使用Navicat的

    堆: 1. 大 2.所有线程共享 3.存放对象实例

    方法区:1.各个线程共享 2.存放已被虚拟机加载的类型信息、常量、静态变量、即时编译器编译后的代码。

2、GC分哪两种,Minor GC 和FullGC有什么区别?分布采用什么算法?

     

3、JVM里的有几种classloader,为什么会有多种?

4、什么是双亲委派机制?介绍一些运作过程。

5、什么反双亲委派模型,过程?

6、线程池的原理,为什么要创建线程池?线程池的二级调度策略?

   参考:https://blog.csdn.net/he90227/article/details/52576452

    答: 服务器完成一个线程,从线程创建、使用、销毁三部分,而线程池为了减少线程创建和销毁的时间。

           线程池的4个部分:

         1.线程池管理器(ThreadPool):用于创建并管理线程池,包括创建线程池、销毁线程池、添加任务。

         2.工作线程(poolWorker):线程池中的线程,在没有任务处于等待状态,可以循环执行任务。

         3.任务接口(Task):每个任务必须实现的接口,任务的具体实现。

         4.任务队列(taskQueue࿰

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值