全程八股文,目前遇到的最简单的一次面试,聊了40分钟,感谢面试官手下留情!
- 线程池原理
追问:核心线程满了后,再有任务需要执行,线程池为什么不继续创建新的线程呢,而是中间引入阻塞队列,能不能在核心线程满了后,继续创建线程,直到线程数达到最大线程数了,再把任务引入阻塞队列,这样的步骤不也是可以的?
上网找了这个答案:
a. 线程池创建线程需要获取mainlock这个全局锁,会影响并发效率,所以使用阻塞队列把第一步创建核心线程与第三步创建最大线程隔离开来,起一个缓冲的作用。
b. 引入阻塞队列,是为了在执行execute()方法时,尽可能的避免获取全局锁。不太懂什么全局锁,为什么会有这个东西,有大佬能解释一下面试官的这个追问吗?
- 问了一下
- 快排原理
- 冒泡原理
- TCP和HTTP的区别
- http keepalive的应用场景
- innodb的索引原理
- 一般什么场景会用索引
- 索引的优缺点
- MySQL插入数据的流程
- 事务说一下
- 事务隔离级别说一下
a. 追问:详细说说可重复读的实现原理。 - 说说redo log、binlog、undolog的区别和使用场景
- 什么时候redoslog会触发写磁盘
- SpringBoot用起来怎么样
- 自动装配原理
- 自动装配的优缺点
- 怎么知道SpringBoot怎么知道自己自动装配了哪些类,你要怎么查?
这个问题有大佬说说吗?我不了解。
反问环节:
问了业务
直接问能过吗?(额额,请问各位大佬,这样子问可以吗?)
他说我过了.
全部评论
(7) 回帖