顺丰科技终试面经

第一次在牛客网发帖,就说说刚结束得顺丰终面吧,热乎的凉经。
岗位投的Java开发工程师。
注:答案是我面试时候说出来的,不一定全面和正确
1.我实习项目有用到ElasticSearch,就问了我倒排索引。
答:这个我感觉我没答到点子上0.0,就不说了
接下来全都是并发和多线程问题了
2.说一下线程得创建方式:
  • 继承 Thread 类,重写 run 方法
  • 实现 Runnable 接口,实现 run 方法
  • 实现 Callable 接口,实现 call 方法
  • 线程池ThreadPoolExecutor
3.那说一下线程池的使用和流程:
答:首先我说了线程池的7个参数:①线程池中的核心线程数;②线程池中最大线程数;③闲置超时时间;④超时时间的单位;⑤线程池中的任务队列;⑥线程工厂;⑦拒绝策略
流程是:当前活跃线程数是否大于核心线程数,是则直接创建,不是则加入队列等待,直到核心线程数用完并且队列已满,判断最大线程数是否剩余,有则创建新线程,没有则看队列是否存满,没存满则入队,反之抛出异常执行拒绝策略。
4.那你说一下线程池参数的队列具体是什么。
答:我答的阻塞队列,具体没有答出来(面完以后查了资料是有4个:①ArrayBlockingQueue;②LinkedBlockingQuene;③SynchronousQuene;④PriorityBlockingQueue)
5.LinkedBlockingQuene这个具体实现说说,什么时候阻塞。
答:回答错了,回答成AQS的原理😂
6.i++操作线程安全吗?具体怎么改成线程安全。
答:不安全,AutomicInteger。
7.AutomicInteger底层用了什么原理.
答:CAS。
8.CAS会造成什么问题,怎么解决。
答:ABA问题,并让我举例描述一下。使用AtomicStampedReference类(这里忘记提加版本号这个解决办法了)
9.锁都了解哪些。使用ReentrantLock应该注意什么。
答:Synchronized,ReentrantLock,Semaphore,Atomic。注意啥我倒是没答上来,后面查资料说是必须在finally调用unlock方法释放锁。
10.算法题:比较简单,两个栈实现队列。
答:不是直接手写,是让我口述出来。刚开始没表达清楚,后面组织语言了几分钟缓缓才回过头来,也不知道面试官懂没懂我的表述😂。
面试刚好30分钟,因为面试官还要进行下一个面试,所以就结束啦0.0。
中间还点错了退出了网页,还好及时点回来了,吓死我了。
问的挺细,没准备好是我太菜了😔。

#顺丰科技面试##顺丰科技##Java工程师##校招##面经#
全部评论
先许愿
点赞 回复
分享
发布于 2020-04-13 18:42
为啥我下午是电话面试,我是三面
点赞 回复
分享
发布于 2020-04-13 18:45
淘天集团
校招火热招聘中
官网直投
询问一波老哥,问两个操作同时成功或者同时失败,spring是怎么做的。这个是问什么的呢😂
点赞 回复
分享
发布于 2020-04-13 20:05
比我的好多了
点赞 回复
分享
发布于 2020-04-13 22:19
我怀疑面试官是不是同一个人,我的姓刘
点赞 回复
分享
发布于 2020-04-14 14:15
谁知道这次二面结果大概什么时候出
点赞 回复
分享
发布于 2020-04-14 14:25
老哥的线程池的工作流程错了
点赞 回复
分享
发布于 2020-04-30 11:45
收到邮件说是“终面” 请问就是hr面吗?
点赞 回复
分享
发布于 2020-09-10 15:40
请问终年不是hr吗,怎么这么详细的技术面?
点赞 回复
分享
发布于 2020-09-10 16:12

相关推荐

7 40 评论
分享
牛客网
牛客企业服务