java面试-多线程篇
文章平均质量分 86
主要说明java面试中的多线程问题和答案
银灵子Qincheng
曾在鹅厂、菊厂体验过生活,目前在猫厂被生活体验。公众号:我的IT技术路。关注我,一起聊聊感兴趣的。
展开
-
Java多线程篇--concurrentHashMap
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中高频面试点concurrentHashMap,concurrentHashMap在实现上和hashMap有很多相似之处。比如底层的数据结构,扩容的倍数,计算table值等等。和hashMap最大的区别就是如何保证线程安全,下面我们也会重点描述其线程安全的保证。如果对hashMap的内容感兴趣,可以看下公众号中之前的文章原创 2021-06-09 09:19:53 · 656 阅读 · 1 评论 -
Java多线程篇--原子包、阻塞队列和并行流
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中提供的一些常用框架atomic、阻塞队列、并行流。原子类在某些场景下能够提高性能,避免使用锁。阻塞队列完成的是生产者消费者模型,这个在很多场景会使用到,包括线程池里面的一个重要参数就是阻塞队列。并行流结合lambda表达式能够改变我们的平时代码风格,但要注意的是需要关注一下线程安全问题。如果对java多线程感兴趣的同学原创 2021-06-09 09:14:14 · 238 阅读 · 1 评论 -
Java多线程篇--threadlocal和线程池
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中提供的一些常用框架threadlocal、线程池。线程池是面试的一大热点问题,非常有必要掌握线程池的原理和相关源码;Threadlocal在某些特定的场合下作用非常大,掌握其核心内容和使用方法也非常有必要。如果对java多线程感兴趣的同学可以看下公众号里多线程系列的文章,也许会对你有些帮助。ThreadLocal有原创 2021-06-09 09:06:43 · 1922 阅读 · 0 评论 -
Java多线程篇--线程的等待通知
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中面试的可能会出现的内容-等待通知。该部分内容是多线程的核心内容,当然也是阻塞队列实现的底层原理。在面试中碰到的概率不大,实际开发中使用的不多(更多的直接使用阻塞队列),同时本文还会描述几个线程相关的内容,这些内容在面试中可能会出现。如果对java多线程感兴趣的同学可以看下公众号里多线程系列的文章,也许会对你有些帮助。原创 2021-06-09 08:59:01 · 295 阅读 · 0 评论 -
Java多线程篇--AQS
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中面试的核心内容可重入锁,这个无论在开发还是面试中都是核心的内容,所以务必要掌握其原理,如果有时间的话,看下这部分源码的内容也是很有帮助的,ReentrantLock的核心是AQS(abstract queue synchronizer)的内容,当然AQS不仅仅是锁的实现,后面的信号量的实现也是基于此。本文会重点解答面试原创 2021-06-09 08:54:28 · 65 阅读 · 0 评论 -
Java多线程篇--并发关键字synchronized和volatile
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中面试的锁机制。这个是面试中的重点内容,也是平时开发过程中经常碰到的问题,所以我们一定要重点了解锁的内容。锁的内容主要有关键字volatile,synchronized,这两个要掌握其实现的原理,下面的内容会重点描述这两个关键字的实现原理以及面试中可能出现的问题。如果对这些感兴趣的话,可以看下公众号中源码的内容。.原创 2021-06-09 08:47:44 · 125 阅读 · 1 评论 -
Java多线程篇--基本概念
在之前的文章中,已经发布了常见的面试题,这里我花了点时间整理了一下对应的解答,由于个人能力有限,不一定完全到位,如果有解答的不合理的地方还请指点,在此谢过。本文主要描述的是java多线程中面试的基本概念。这个在面试中一般不会直接问,但是如果对一些知识点敞开描述的时候,可以深入聊下。如果对java多线程感兴趣的同学可以看下公众号里多线程系列的文章,也许会对你有些帮助。说下并发和并行的区别?并发是指在一段时间内有多个任务需要执行,你可以使用单个cpu串行:在cpu在执行多个任务的时候,每个时间.原创 2021-06-09 08:42:59 · 177 阅读 · 0 评论 -
java面试-多线程常见面试题
多线程是java的一名必修课,熟悉并掌握多线程在面试中很重要。一般多线程的面试集中在底层实现,基本概念,线程池等问题。如果对多线程的概念有兴趣可以看下公众号中多线程系列的文章。Volatile的作用是什么?底层是怎么实现的?缓存的一致性协议是什么?有没有了解过内存屏障? Synchronized 的原理有了解?和reentryLock的区别是什么?锁升级是指什么? 并发和并行的概念有了解?Java实现并发的方式有几种? 线程和进程的概念?守护线程是干什么的?常见的守护线程有哪些? Java怎么创原创 2021-06-09 08:35:05 · 104 阅读 · 1 评论