首页 > 3.18腾讯光子后台开发二面(暑期实习)
头像
基德大人
编辑于 2021-04-05 19:33
+ 关注

3.18腾讯光子后台开发二面(暑期实习)

3.16号一面 https://www.nowcoder.com/discuss/632325?type=all&order=time&pos=&page=1&channel=-1&source_id=search_all_nctrack

3.18号二面电话面试,20分钟就结束了,让我再好好准备一下😂😂。(已凉)
下面一些问题的回答,只是个人见解,不一定是对的,仅供参考,欢迎大家指正。


  1. Java虚拟机的GC原理
  2. 说说可达性分析法
  3. 哪些对象可以作为GC root

    1.虚拟机栈中引用的对象
    2.方法区中静态属性引用的对象
    3.方法区中常量引用的对象
    4.本地方法栈中JNI(即Native方法)引用的对象

  4. 弱引用是用来干的

    缓存和防止内存泄漏。像ThreadLocal中,获取到线程私有对象是通过线程持有的一个threadLocalMap,然后传入ThreadLocal当做key获取到对象的,这时候就有个问题,如果你在使用完ThreadLocal之后,将其置为null,这时候这个对象并不能被回收,因为他还有 ThreadLocalMap->entry->key的引用,直到该线程被销毁,但是这个线程很可能会被放到线程池中不会被销毁,这就产生了内存泄露,jdk是通过弱引用来解决的这个问题的,entry中对key的引用是弱引用,当你取消了ThreadLocal的强引用之后,他就只剩下一个弱引用了,所以也会被回收。

  5. 如果让你自己实现一个线程池,你怎么控制这个线程的并发数

    正确答案:https://blog.csdn.net/manzhizhen/article/details/81413014
    下面回答是如何自己实现一个线程池,面试的时候回答有点偏了
    1.要定义一个存放所有线程的集合
    2.每有一个任务分配给线程池,我们就从线程池中分配一个线程处理它
    3.当线程池中的线程都在运行状态,没有空闲线程时,我们还需要一个队列来存储提交给线程池的任务。

  6. 乐观锁是什么?

    乐观锁(compare and swap)假设认为数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测。CAS机制当中使用了3个基本操作数:内存地址V,旧的预期值A,要修改的新值B。

  7. CAS的缺点

    1.CPU开销较大
    2.不能保证代码块的原子性
    3.ABA问题

  8. Java里面怎么实现(调用)一个乐观锁

    java.util.concurrent包 (J.U.C)就是建立在CAS之上的,其中提供了AtomicInteger,AtomicBoolean,AtomicLong等

  9. 哈希冲突一般怎么解决
  10. 拉链法如果重复的比较多的时候,性能下降很厉害,怎么办?
  11. 红黑树和平衡二叉树有什么区别?

    AVL 树比红黑树更加平衡,但AVL树在插入和删除的时候也会存在大量的旋转操作。所以当你的应用涉及到频繁的插入和删除操作,切记放弃AVL树,选择性能更好的红黑树;当然,如果你的应用中涉及的插入和删除操作并不频繁,而是查找操作相对更频繁,那么就优先选择 AVL 树进行实现。

  12. 平衡二叉树和红黑树旋转次数比较

    https://blog.csdn.net/z702143700/article/details/49079107
    平衡二叉树:插入最多一次旋转,删除最多logN次
    红黑树:插入最多二次,删除最多三次

  13. 一致性哈希知道吗

    将请求均匀地分配到应用服务器上;确保同样的用户总是访问同一个服务器等。

  14. TCP 里面的time_wait和time_close的状态
  15. 这个状态保持多长时间

    2MSL

  16. 为什么是2MSL

    去向ACK消息最大存活时间(MSL) + 来向FIN消息的最大存活时间(MSL)

  17. 一个 32 位的JVM可以管理多大内存

    简单的说就32位处理器虽然可控内存空间有4GB,但是具体的操作系统会给一个限制,这个限制一般是2GB-3GB。

  18. 跳跃表这种数据结构了解吗,时间复杂度
  19. 跳跃表用在什么地方

    应用场景:节点增加和更新比较少,查询频次较多的情况。
    产品:Lucene,,elasticSearch,Redis。

  20. 为什么redis中用跳跃表不用红黑树?

    https://www.cnblogs.com/cjjjj/p/12751487.html

  21. 数据库有慢查询如何去定位
  22. 为什么加索引可以加快查询速度
  23. b+树和红黑树有什么区别
  24. 一个三层的B+树大概能存多少条记录

    https://blog.csdn.net/qq_35590091/article/details/107361172

  25. 一个进程 fork 出一个子进程,内存占用会不会翻倍

    https://blog.csdn.net/frank_jb/article/details/90701410

更多模拟面试

全部评论

(3) 回帖
加载中...
话题 回帖

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐