- 博客(16)
- 收藏
- 关注
原创 大厂技术面试题解析——什么是可重入 ,什么是可重入锁? 它用来解决什么问题?
关于这个问题 ,其实是考察求职者的基础知识。互联网大厂对基础的考察会特别深,有必要的话还是需要在工作之外去多花一点时间研究。
2024-02-23 13:41:44
489
1
原创 大厂技术面试题解析——基于数组的阻塞队列 ArrayBlockingQueue 原理
它的作用是在队列的基础上提供了阻塞添加和获取元素的能力,那么它的工作原理就是 指用了什么设计方法或者技术来实现这样的功能 ,我们只要把这个部分说清楚就可以了。
2024-02-18 10:42:21
530
原创 大厂技术面试题解析——Thread Local 是什么? 它的实现原理呢?
Thread Local 使用场景比较多,比如在数据库连接的隔离、对于客户端请求会话的隔离等等。在 Thread Local 中 ,除了空间换时间的设计思想以外 ,还有一些比较好的设计思想 , 比如线性探索解决 hash 冲突,数据预清理机制、弱引用 key 设计尽可能避免内存泄漏等。
2024-02-02 17:39:30
408
原创 大厂技术面试题解析——讲一下 wait 和 notify 这个为什么要在 synchronized 代码 块中?
其实考察的就是 Synchronized、wait/notify 的设计原理和实现原理。其实并发这块内容理论上来说所有程序员都应该要懂,不管是它的应用价值,还是设计理念 ,非常值得学习和借鉴。
2024-02-01 16:46:44
555
1
原创 大厂技术面试题解析——volatile 关键字有什么用? 它的实现原理是什么?
在我看来,并发编程是每个程序员必须要掌握好的领域,它里面涵盖的设计思想、和并发问题的解决思路、以及作为一个并发工具 ,都是非常值得深度研究的。
2024-01-30 16:53:21
640
1
原创 大厂技术面试题解析——AbstractQueued Synchronized 为什么采用双向链表
总而言之,采用单向链表不支持双向遍历,而 AQS 中存在很多需要双向遍历的场景来提升线程阻塞和唤醒的效率。
2024-01-29 17:41:56
703
原创 大厂技术面试题解析——死锁的发生原因和怎么避免
当大家理解了死锁发生的条件 ,那么对于这些条件的破坏,是可以通过自己的技术积累 ,来设计解决方法的。
2024-01-24 15:23:52
598
1
原创 大厂技术面试题解析——能谈一下 CAS 机制吗?
CAS 主要用在并发场景中,比较典型的使用场景有两个。1. 第一个是 J.U.C 里面 Atomic 的原子实现,比如 AtomicInteger,AtomicLong。2. 第二个是实现多线程对共享资源竞争的互斥性质,比如在 AQS、ConcurrentHashMap、ConcurrentLinkedQueue 等都有用到。
2024-01-23 14:35:48
593
1
原创 大厂技术面试题解析——ConcurrentHash Map 底层具体实现知道吗?实现原理是什么?
1.ConcurrentHashMap 的整体架构2.ConcurrentHashMap 的基本功能3.ConcurrentHashMap 在性能方面的优化
2024-01-22 13:37:27
707
原创 大厂技术面试题解析——什么叫做阻塞队列的有界和无界
阻塞队列在生产者消费者模型的场景中使用频率比较高,比较典型的就是在线程池中,通过阻塞队列来实现线程任务的生产和消费功能。基于阻塞队列实现的生产者消费者模型比较适合用在异步化性能提升的场景,以及做并发流量缓冲类的场景中!
2024-01-19 10:27:37
516
1
原创 大厂面试技术题解析——谈谈你对AQS的理解
AQS 全称是 AbstractQueuedSynchronizer,它是 J.U.C 包中Lock 锁的底层实现,可以用它来实现多线程的同步器!排它锁,就是存在多线程竞争同一共享资源时,同一时刻只允许一个线程访问该共享资源,也就是多个线程中只能有一个线程获得锁资源,比如。在很多大厂的面试中,面试官对于并发编程的考核要求相对较高,简单来说,如果你不懂并发编程 ,那么你很难通过大厂高薪岗位的面试。从本质上来说 ,AQS提供了两种锁机制 ,分别是排它锁 ,和共享锁。谈谈你对AQS的理解。
2024-01-16 14:19:24
652
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人