2019阿里巴巴高质量JVM组实习面经(已拿offer)

    xiaoxiao2023-11-22  157

    阿里的面试质量是真的非常高。

    自我介绍看过hotspot哪些模块,模板解释器工作说一下,生成的native code放在哪,怎么处理safepoint的说项目,实现了哪些字节码指令;monitorenter monitorexit怎么实现的;GC;new Thread怎么实现的;synchronized怎么实现的,对象锁是每个对象都有吗,怎么确定是否给对象分配对锁;怎么进行对象分配的,STW之后用户线程还能继续吗so on算法题,无向图的复制;不消耗额外空间重写一个;如果多线程怎么做,说一下lookupswitch和tableswitch区别学校开过哪些课,编译原理自己学的吗Collections.sort(),归并快排区别,为什么jawa老版本用归并不用快排HashMap说一下,cpp的map和jawa的HashMap区别,hash冲突有哪些解决方法,unordered_map怎么解决hash冲突的GC新生代复制怎么解决对象指针改变(移动)的问题的,CMS写屏障,三色标记调试方法有哪些,条件断点打过吗有什么要问的

    二面

    C 和jawa区别,确定性gc非确定性gc区别JMM 看过哪些,volatile重排序,sfence lfence mfenceX86/x64 加不加volatile原子性与否,如果用jawa你会怎么做口述引用计数智能指针实现C RAII, jawa能实现RAII吗C 怎么做一个内存检测,那种可以看内存分布情况的C 怎么做一个内存泄漏检测工具,类似valgrind如果让你给C 加一个gc怎么做参加过哪些开源社区,提交的请求为什么没有merge;成绩怎么样,实习满分是什么概念,英语怎么样,翻译的effective modern cpp是帮老师翻译的吗etc标量替换,逃逸分析,标量是什么你的JVM怎么处理safepoint,这种实现有什么问题,如果for循环很久到不了safe point就内存溢出怎么办,回边有了解吗有什么要问的

    三面

    三面问了一个宇宙。。。

    HotSpot的oop是什么,简单说一下JVM的偏向锁,轻量级锁,重量级锁。偏向锁怎么做的,轻量级怎么膨胀到重量级。JVM新生代划分,TLABCMS详细阶段以及做的事情C 的RAII,lock_guard,有什么好处C 的shared_ptr和unique_ptrFull GC是什么,在什么时候发生,这个正常吗,解决方案Safepoint知道吗,如果在JNI方法里面走到JNI的safepoint,hotspot大概是怎么实现safepoint的G1GC用过吗,用户能控制吞吐量吗,CMS和G1GC各有什么好处,什么场景用什么一个程序的编译流程,词法分析语法分析,中间IR,代码生成MySQL分库分表,思路就行 (!)分布式锁怎么实现 (!)如果一个问题你实在解决不了怎么办,就是gdb coredump,文档都搞不定的情况如果项目很急,另一个同事非常不给力,你怎么办SpringBoot用过吗,相对于传统spring有什么好处 (!)MVC是什么,分别说一下,你觉得VUE做MVC和后端做有什么不同 (!)Go语言用过吗,协程说一下,和线程比较一下Maven可以做什么,能自动管理依赖吗,自动下载的jars大概放在哪个目录,git rebase,git merge区别持续集成用过吗,是什么东西,为什么要用它,交叉编译不也是可以吗CAS在底层做了,lock cmpxchg怎么做的SIMD知道吗,说一下 (!)JVMTI说一下 (!)算法,二叉树的分层遍历

    四面

    自我介绍创建线程的方式有哪些,Java线程模型;1:1和N:M优缺点线程死锁怎么排查;jps jmap分别用于什么,如果上述方案排查不到怎么办怎么查看Java线程对应的OS线程PIDsynchronized和ReentrantLock线程池工作原理,怎么处理IDLE线程的,代码上说一下ConcurrentHashmap和JDK8之前有什么区别;size是怎么求的对象的hashCode底层有哪几种方法;快排原理,非递归怎么实现;堆排序原理MySQL隔离级别,脏读幻读是什么,会在哪一级发生索引的底层在InnoDB和MyISAM上的不同参加过什么开源社区;生活学习比赛etc;有什么要问的
    最新回复(0)