OPPO后端开发二面
约面的时候确实没想到,听说都签约了那么多了,以为是kpi。但是人很好,爆吹!慢悠悠,一直笑而且在回应。
1.介绍本次面试的构成,自我介绍,聊项目穿插八股,反问
2.自我介绍
3.挑一个最有挑战的项目或者实习讲,并简单追问
4.线程池ThreadPoolExcuter如何保证核心线程的存活的?我先想到了take(),然后面试官说但是take以后执行完run方法,一样会被判定为结束,一直在给我说基础概念尝试引导,最后直接问现在让你写一个程序,让他不结束,怎么办,我还在想IO阻塞,都想给自己两巴掌,突然就想到了循环,一下就串起来了。
5.MySQL索引,现在有一个名字,性别,身份证的表,5000w数据,查询所有男性,在性别上建索引,但是仍然全表扫描,为什么?MySQL这么做的原因是什么?我又从索引数据结构说,没说通,最后通过一系列引导,成功提到了MySQL会判断,性别是非聚簇索引,产生一次回表,但是回表的时候主键可能不是有序的,关键点是全表扫描顺序IO和随机IO的性能差。
6.反问
- 注重应届生哪些方面?软硬结合,硬素质就是要求会的内容,或者在提示下能答出来也过关。软素质沟通能力,思维逻辑性。
真的很好,面试体验很棒。没答出来确实是八股基础不深,自己问题。结束6个小时后晚上看状态是已完成,不知道过没过,先泡着。 #Java# #后端# #秋招# #2025# #OPPO#
1.介绍本次面试的构成,自我介绍,聊项目穿插八股,反问
2.自我介绍
3.挑一个最有挑战的项目或者实习讲,并简单追问
4.线程池ThreadPoolExcuter如何保证核心线程的存活的?我先想到了take(),然后面试官说但是take以后执行完run方法,一样会被判定为结束,一直在给我说基础概念尝试引导,最后直接问现在让你写一个程序,让他不结束,怎么办,我还在想IO阻塞,都想给自己两巴掌,突然就想到了循环,一下就串起来了。
5.MySQL索引,现在有一个名字,性别,身份证的表,5000w数据,查询所有男性,在性别上建索引,但是仍然全表扫描,为什么?MySQL这么做的原因是什么?我又从索引数据结构说,没说通,最后通过一系列引导,成功提到了MySQL会判断,性别是非聚簇索引,产生一次回表,但是回表的时候主键可能不是有序的,关键点是全表扫描顺序IO和随机IO的性能差。
6.反问
- 注重应届生哪些方面?软硬结合,硬素质就是要求会的内容,或者在提示下能答出来也过关。软素质沟通能力,思维逻辑性。
真的很好,面试体验很棒。没答出来确实是八股基础不深,自己问题。结束6个小时后晚上看状态是已完成,不知道过没过,先泡着。 #Java# #后端# #秋招# #2025# #OPPO#
全部评论
线程池那个题目没看懂,核心线程能够一直存活的原因就是因为take方法啊,在runWorker方法里面while循环条件:task != null || (task = getTask()) != null,getTask方法里边会进行判断,如果设置allowCoreThreadTimeOut为true(默认是false),会调用阻塞队列的poll方法,方法有时间参数可以设置超时时间,超过了就会返回null;如果是false,则会调用阻塞队列的take方法,无限期等待不会超时,核心线程执行到这就会挂起无限等待
好兄弟,同一个面试官同样的问题
是线下面的嘛uu
大佬,那个全表扫描的问题,我能理解成,性别字段不是聚簇索引,查询完之后,还得回表查询,效率不高所以选择直接全表查询吗😋,或者是其他什么原因嘛
但是好像就是用take方法一直阻塞线程,外面的无限for循环是在不断的检查线程池状态和队列容量,来获取可执行任务
相关推荐
点赞 评论 收藏
分享
2025-11-13 14:37
门头沟学院 Java 程序员牛肉:是的,我觉得你最先需要的是多接触计算机圈子。我感觉你这个写的太幼稚了,根本没换位思考面试官。
你对实习的描述还是我写了前后端,我写了Restful接口,我用了EChatrs。你这让面试官怎么问你?问你什么是前后端?问你什么是Restful?讲真的兄弟,你这个简历在面试官眼里就是啥也不懂的好学生。所以一定要尽快加入一个圈子跟大家多聊聊,看看正儿八经的简历是怎么写的。
可以看一下我首页的简历怎么写那篇文章来学一下,你这里面的坑点我那篇文章里面都有讲过。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
