【JAVA面试精选篇-初生牛犊不怕虎】

🌽 简介

海阔凭鱼跃,天高任鸟飞! 学习不要盲目,让大脑舒服的方式吸收知识!!!
本人马上离开济南,回泰安发展,为了积极准备面试,目前在梳理一些知识点,同时希望能够帮助到需要的人…

🧺 线程池

线程池添加线程存放顺序顺序~

线程池的创建~

自定义线程池->ThreadPoolExecutor(必会⭐⭐⭐⭐⭐)

public ThreadPoolExecutor(int corePoolSize,
                          int maximumPoolSize,
                          long keepAliveTime,
                          TimeUnit unit,
                          BlockingQueue<Runnable> workQueue,
                          ThreadFactory threadFactory,
                          RejectedExecutionHandler handler)
  • corePoolSize 核心线程数
    计算策略:
    CPU密集型->设置为CPU 核数 +1
    IO密集型-> CPU 核心数 * (1 + IO 耗时/ CPU 耗时)
  • maximumPoolSize 最大线程数
  • keepAliveTime 生存时间
  • TimeUnit 时间单位
  • BlockingQueue (有界队列/无界队列)
  • ThreadFactory 线程工厂
  • RejectedExecutionHandler 拒绝策略

Executors 创建线程池(理解⭐⭐⭐)

Executors.newFixedThreadPool:创建⼀个固定⼤⼩的线程池,可控制并发的线程数,超出的线程会在队列中等待;
Executors.newCachedThreadPool:创建⼀个可缓存的线程池,若线程数超过处理所需,缓存⼀段时间后会回收,若线程数不够,则新建线程;
Executors.newSingleThreadExecutor:创建单个线程数的线程池,它可以保证先进先出的执⾏顺序;
Executors.newScheduledThreadPool:创建⼀个可以执⾏延迟任务的线程池;
Executors.newSingleThreadScheduledExecutor:创建⼀个单线程的可以执⾏延迟任务的线程池;
Executors.newWorkStealingPool:创建⼀个抢占式执⾏的线程池(任务执⾏顺序不确定)

🌄 Redis

Redis经典剖析: 读完这篇,Redis面试基本过关!!!(掌握⭐⭐⭐⭐⭐)

⏰ JVM

jvm内存模型(掌握⭐⭐⭐⭐⭐)


方法区(元空间)

在程序中声明的常量、静态变量和有关于类的信息等的引用,都会存放在方法区,而这些引用所指向的具体对象 一般都会在堆中开辟单独的空间进行存储,也可能会在直接内存中进行存

  • 17
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农佩奇

打酒喝!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值