小红书Java一面凉经

2023-09-02-13-00 小红书

项目里面的定时任务是做什么用的

介绍下hash时间轮(项目里面的)

说下Sychronized关键字(听成了static,说了半天,被纠正才开始说Sychronized)

说下为什么Sychronized效率高(说了锁膨胀)

Sychronized和ReetrantLock有什么区别

说下什么是死锁,写代码模拟死锁的状态,要百分之百会出现死锁,而不是偶现(我写的是偶现,百分百是while+yield,没有写出来并且我还说肯定会出现死锁)

https://www.cnblogs.com/ocean234/p/10690962.html

公平锁和非公平锁有什么区别

Sychronized和ReetrantLock哪个性能好些(这个我其实不是十分肯定,我最开始说的ReetrantLock好些,后来改口说Sychronized在竞争不激烈时好,激烈两个差不多)

它两个在竞争激烈的时候,原理有什么差别吗(我说底层原理应该是一样的)

算法:计算表达式,1+2*5-6/2

不用考虑括号,这要这个式子过就行,写了17min

面完三分钟,发感谢信

开始写算法之后,明显面试官就没有在听在看了,看来那个时候就已经决定挂我了

总结

会的八股文说的稍微有点磕巴(记忆有些模糊),应该要一口气有条理的说出来

算法写的时间太长了,简单题应该10min以内(网页写代码乱给提示,还没有tab补全,不习惯)

算法要深挖,死锁不知道还有偶现和百分百两种

还是不懂:

网上说ReentrantLock性能一般更好,不知道为什么

两个在竞争激烈的情况下,原理有什么不同,时说两个锁的结构?不懂

全部评论
synchronized和reentryedlock底层不一样啊,前者是monitor,后者是AQS
点赞 回复 分享
发布于 2023-09-05 12:52 山东
个人理解:synchronized和ReetrantLock性能上其实区别不大,可重入锁在竞争不激烈的情况下是通过cas获取锁的,synchronized不激烈的情况下是差不多的,然后竞争激烈其实也差不多,但是底层实现还是不一样的,一个是api层面通过aqs,一个是监视器对象。选择那种锁,性能其实不是主要考虑因素。
点赞 回复 分享
发布于 2023-09-05 14:23 广东

相关推荐

5 20 评论
分享
牛客网
牛客企业服务