
java 并发
茅坤宝骏氹
语言:Java、C/C++、C#、Python、Linux Shell。
框架:Spring、Spring MVC、Spring Boot、Spring Cloud、Hibernate、Mybatis、Freemarker、Velocity。
前端:HTML5、CSS3、JavaScript、Bootstrap、JQuery、Vue、React。
数据库:oracle、mysql、MongoDB、HBase。
缓存:Memcache、Redis。
消息队列:kafka。
大数据:Hadoop、Hive、Sqoop、Flume、Spark、Strom、OpenTSDB、Druid。
展开
-
Java并发编程面试题(2020最新版)
转载自Java并发编程面试题(2020最新版)基础知识并发编程的优缺点为什么要使用并发编程(并发编程的优点) 充分利用多核CPU的计算能力:通过并发编程的形式可以将多核CPU的计算能力发挥到极致,性能得到提升 方便进行业务拆分,提升系统并发能力和性能:在特殊的业务场景下,先天的就适合于并发编程。现在的系统动不动就要求百万级甚至千万级的并发量,而多线程并发编程正是开发高并发系统的基础,利用好多线程机制可以大大提高系统整体的并发能力以及性能。面对复杂业务模型,并行程序会比...转载 2020-05-14 10:18:32 · 476 阅读 · 0 评论 -
面试:你说你精通Java并发,给我讲讲Java并发之J.U.C
转载自面试:你说你精通Java并发,给我讲讲Java并发之J.U.CJ.U.CJ.U.C即java.util.concurrent包,为我们提供了很多高性能的并发类,可以说是java并发的核心。J.U.C和CAS和Unsafe和AQSConcurrent包下所有类底层都是依靠CAS操作来实现,而sun.misc.Unsafe为我们提供了一系列的CAS操作。AQS框架是J.U.C中实现锁及同步机制的基础,其底层是通过调用 LockSupport .unpark()和 LockSuppor.转载 2020-05-10 14:37:19 · 724 阅读 · 0 评论 -
推荐:全网最全的Java并发面试题及答案。
转载自推荐:全网最全的Java并发面试题及答案。1、在java中守护线程和本地线程区别?java中的线程分为两种:守护线程(Daemon)和用户线程(User)。任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(bool on);true则把该线程设置为守护线程,反之则为用户线程。Thread.setDaemon()必须在Thread.start()...转载 2019-09-01 10:40:33 · 346 阅读 · 0 评论 -
java 高并发面试题
转载自java 高并发面试题1、线程与进程 进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack region)。文本区域存储处理器执行的代码;数据区域存储变量和进程执行期间使用的动态分配的内存;堆栈区域存储着活动过程调用的指令和本地变量。 一个标准的线程由线程ID,当前指令...转载 2019-05-04 00:20:04 · 1369 阅读 · 0 评论 -
三个好用的并发工具类
转载自三个好用的并发工具类以前的文章中,我们介绍了太多的底层原理技术以及新概念,本篇我们轻松点,了解下 Java 并发包下、基于这些底层原理的三个框架工具类。它们分别是: 信号量 Semaphore 倒计时门栓 CountDownLatch 屏障 CyclicBarrier 所以,既然是工具类,那么必然是离不开特定的场景的,于是相互之间没有谁优谁劣,只有谁...转载 2019-04-23 23:16:04 · 299 阅读 · 0 评论 -
Java的并发编程中的多线程问题到底是怎么回事儿?
转载自 Java的并发编程中的多线程问题到底是怎么回事儿?在我之前的一篇《再有人问你Java内存模型是什么,就把这篇文章发给他。》文章中,介绍了Java内存模型,通过这篇文章,大家应该都知道了Java内存模型的概念以及作用,这篇文章中谈到,在Java并发编程中,通常会遇到三个问题,即原子性问题、一致性问题和有序性问题。上面一篇文章简单介绍了一下,由于各种原因会导致多线程场景下可能存在原...转载 2018-10-19 12:39:57 · 299 阅读 · 0 评论 -
面试官最爱问的并发问题
转载自 面试官最爱问的并发问题在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层实现以及操作系统的相关知识。 1关于Java并发,说说你对volatile关键字的理解就我理解的而言,被volati...转载 2018-09-26 09:17:05 · 369 阅读 · 0 评论 -
聊聊并发(八)——Fork/Join框架介绍
转载自 聊聊并发(八)——Fork/Join框架介绍1. 什么是Fork/Join框架Fork/Join框架是Java7提供了的一个用于并行执行任务的框架, 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。我们再通过Fork和Join这两个单词来理解下Fork/Join框架,Fork就是把一个大任务切分为若干子任务并行的执行,Join就是合并这些子任务的执行结果...转载 2018-06-08 07:46:31 · 207 阅读 · 0 评论 -
非常有用的并发控制-倒计时器CountDownLatc
转载自 非常有用的并发控制-倒计时器CountDownLatchCountDownLatch见名思义,即倒计时器,是多线程并发控制中非常有用的工具类,它可以控制线程等待,直到倒计时器归0再继续执行。给你出个题,控制5个线程执行完后主线徎再往下执行,并统计5个线程的所耗时间。当然我们可以通过join的形式完成这道题,但如果我说统计100个1000个线程呢?难道要写1000个join等待吗?这显然是不...转载 2018-04-29 20:08:49 · 694 阅读 · 0 评论 -
非常有用的并发控制-循环栅栏CyclicBarrier
转载自 非常有用的并发控制-循环栅栏CyclicBarrier昨天我讲了倒计时器CountDownLatch的应用,它是阻塞线程直到计时器归0的一种等待方式。今天讲的这个循环栅栏CyclicBarrier与倒计时器非常类似,但它比倒时器更加强大且稍微复杂,它也是并发控制中非常实用的工具。循环栅栏CyclicBarrier,从英语字义可以理解为它是可以循环利用的,且栅栏是用来阻止线程在栅栏外等待的,...转载 2018-04-30 09:43:46 · 368 阅读 · 0 评论 -
20 个使用 Java CompletableFuture的例子
转载自 20 个使用 Java CompletableFuture的例子这篇文章介绍 Java 8 的 CompletionStage API和它的标准库的实现 CompletableFuture。API通过例子的方式演示了它的行为,每个例子演示一到两个行为。既然CompletableFuture类实现了CompletionStage接口,首先我们需要理解这个接口的契约。它代表了一个特定的计算的阶...转载 2018-05-08 10:25:18 · 372 阅读 · 0 评论 -
Java7任务并行执行神器:Fork&Join框架
转载自 Java7任务并行执行神器:Fork&Join框架Fork/Join是什么?Fork/Join框架是Java7提供的并行执行任务框架,思想是将大任务分解成小任务,然后小任务又可以继续分解,然后每个小任务分别计算出结果再合并起来,最后将汇总的结果作为大任务结果。其思想和MapReduce的思想非常类似。对于任务的分割,要求各个子任务之间相互独立,能够并行独立地执行任务,互相之间不影响...转载 2018-04-25 10:12:25 · 254 阅读 · 0 评论 -
通过实例理解 JDK8 的 CompletableFuture
转载自 通过实例理解 JDK8 的 CompletableFuture 前言Java 5 并发库主要关注于异步任务的处理,它采用了这样一种模式,producer 线程创建任务并且利用阻塞队列将其传递给任务的 consumer。这种模型在 Java 7 和 8 中进一步发展,并且开始支持另外一种风格的任务执行,那就是将任务的数据集分解为子集,每个子集都可以由独立且同质的子任务来负责处理。...转载 2018-05-01 08:50:10 · 8612 阅读 · 0 评论