2023-04-12 1h50min 腾讯云智春招一面
1.自我介绍
2.介绍一下对我影响比较好的成长比较高的项目介绍一个或者两个
3.在你介绍下项目中问几个问题(这里聊了1个多小时,下面是项目引出的八股)
- Redisson底层里面有重复的加,含义是什么?
- Redisson重入锁加锁的时候连接超时了,锁过期了怎么办?
- 看门狗的机制在哪里实现的?如果失效了还能解决上面的问题吗?
- 详细说一下Redisson解锁的过程,如何保证的原子性?
- 解锁的时候,和看门狗机制一起执行,然后本应该解锁了但是被续期了怎么做?
4.synchronize的加锁解锁过程?
5.你提到了monitor,一个线程进来后你怎么知道一个线程加锁了?怎么在monitor上加锁的?
6.那monitor怎么知道是不是当前线程的?
7.那你听说过对象头不?
8.锁升级为啥和对象头有关系?
9.java中锁是锁的对象,那么和monitor有啥关系
10.monitor和对象头之间的关系是啥?
11.对象头中的锁是干啥的,monitor中的锁是干啥的?
12.说一下hashmap
13.什么时候会把链表变为红黑树
14.转为红黑树后会转换回来吗?
15.hashmap在线程安全的情况下会有什么问题?
16.hashMap1.7下头插法怎么形成的环?
17.用什么代替hashMap,介绍一下
18.在put的时候你保证了线程安全,但是get怎么保证线程安全的?
19.说一下CMS的工作原理
20.为啥要做并发标记?
21.CMS的垃圾收集算法是啥?有啥问题?
22.G1垃圾收集器?G1和CMS的区别?什么时候用CMS什么时候用G1?
23.CMS对CPU有要求吗?
24.CMS为啥对CPU敏感?
25.如果我的cpu核数是2或者3对用户线程或者并发线程有啥处理和优化吗?
26.Innodb中的数据结构是啥,说一下原理?
27.说一下为啥B+树的IO次数比较小
28.B+树矮胖和IO次数比较少有啥关系?为啥结点只存索引IO次数会变少?
29.还有没有其他原因导致B+比B树更合适
30.MyISAM引擎用的什么数据结构?
31.知道辅助索引吗?
#春招#