PCon全球产品创新大会最新日程上线,这里直达 了解详情
写点什么
  • 发布
  • 评论
  • 划线
  • 收藏
  • 关注
  • 全部分类
冰河整理 深入理解高并发编程 | 内容精选合集
冰河整理 深入理解高并发编程 | 内容精选合集

并发编程一直是程序员们比较头疼的,如何编写正确的并发程序相比其他程序来说,是一件比较困难的事情,并发编程中出现的 Bug 往往也是特别诡异的,之所以说并发编程出现的 Bug 比较诡异,是因为在并发编程中,很多时候出现的 Bug 不一定能完美的复现出来。

【高并发】如何使用Java7提供的Fork/Join框架实现高并发程序?
【高并发】如何使用 Java7 提供的 Fork/Join 框架实现高并发程序?

在 J.U.C(java.util.concurrent) 中,是 Java7 中提供的用于执行并行任务的框架,其可以将大任务分割成若干个小任务,最终汇总每个小任务的结果后得到最终结果。基本思想和 Hadoop 的 MapReduce 思想类似采用的是工作窃取算法(某个线程从其他队列里窃取任务来执行)

【高并发】朋友去面试竟然栽在了Thread类的源码上
【高并发】朋友去面试竟然栽在了 Thread 类的源码上

最近和一个朋友聊天,他跟我说起了他去 XXX 公司面试的情况,面试官的一个问题把他打懵了!竟然问他:你经常使用 Thread 创建线程,那你看过 Thread 类的源码吗?我这个朋友自然是没看过 Thread 类的源码,然后,就没有然后了!!!

【高并发】浅谈AQS中的ReentrantLock、ReentrantReadWriteLock、StampedLock与Condition
【高并发】浅谈 AQS 中的 ReentrantLock、ReentrantReadWriteLock、StampedLock 与 Condition

Java 中主要分为两类锁,一类是 synchronized 修饰的锁,另外一类就是 J.U.C 中提供的锁。J.U.C 中提供的核心锁就是 ReentrantLock。

【高并发】浅谈AQS中的CountDownLatch、Semaphore与CyclicBarrier
【高并发】浅谈 AQS 中的 CountDownLatch、Semaphore 与 CyclicBarrier

大家好,我是冰河, 今天,跟大家聊聊 AQS 中的 CountDownLatch、Semaphore 与 CyclicBarrier!

【高并发】由InterruptedException异常引发的思考
【高并发】由 InterruptedException 异常引发的思考

当我们在调用 Java 对象的 wait() 方法或者线程的 sleep() 方法时,需要捕获并处理 InterruptedException 异常。如果我们对 InterruptedException 异常处理不当,则会发生我们意想不到的后果!今天,我们就以案例的形式聊聊并发编程中的 InterruptedException 异常。

【高并发】深度解析ScheduledThreadPoolExecutor类的源代码
【高并发】深度解析 ScheduledThreadPoolExecutor 类的源代码

在【高并发专题】的专栏中,我们深度分析了 ThreadPoolExecutor 类的源代码,而 ScheduledThreadPoolExecutor 类是 ThreadPoolExecutor 类的子类。今天我们就来一起手撕 ScheduledThreadPoolExecutor 类的源代码。

【高并发】ScheduledThreadPoolExecutor与Timer的区别和简单示例
【高并发】ScheduledThreadPoolExecutor 与 Timer 的区别和简单示例

本文,就简单介绍下 ScheduledThreadPoolExecutor 类与 Timer 类的区别,ScheduledThreadPoolExecutor 类相比于 Timer 类来说,究竟有哪些优势,以及二者分别实现任务调度的简单示例。

【高并发】从源码角度深度解析线程池是如何实现优雅退出的
【高并发】从源码角度深度解析线程池是如何实现优雅退出的

在【高并发专题】中,我们从源码角度深度分析了线程池中那些重要的接口和抽象类、深度解析了线程池是如何创建的,ThreadPoolExecutor 类有哪些属性和内部类,以及它们对线程池的重要作用。深度分析了线程池的整体核心流程,以及如何拆解 Worker 线程的执行代码

【高并发】通过源码深度分析线程池中Worker线程的执行流程
【高并发】通过源码深度分析线程池中 Worker 线程的执行流程

在前面的文章中,我们深度分析了线程池执行任务的核心流程,在 ThreadPoolExecutor 类的 addWorker(Runnable, boolean) 方法中,使用 CAS 安全的更新线程的数量之后,接下来就是创建新的 Worker 线程执行任务,所以,我们先来分析下 Worker 类的源码。

【高并发】通过ThreadPoolExecutor类的源码深度解析线程池执行任务的核心流程
【高并发】通过 ThreadPoolExecutor 类的源码深度解析线程池执行任务的核心流程

今天,我们通过 ThreadPoolExecutor 类的源码深度解析线程池执行任务的核心流程,小伙伴们最好是打开 IDEA,按照冰河说的步骤,调试下 ThreadPoolExecutor 类的源码,这样会理解的更加深刻,好了,开始今天的主题。

【高并发】通过源码深度解析ThreadPoolExecutor类是如何保证线程池正确运行的
【高并发】通过源码深度解析 ThreadPoolExecutor 类是如何保证线程池正确运行的

对于线程池的核心类 ThreadPoolExecutor 来说,有哪些重要的属性和内部类为线程池的正确运行提供重要的保障呢?

个人成就
  • 发布了 154 篇内容

    76.9字, 被阅读 52089

  • 获得了 481 次赞同

    获得了 124次喜欢, 获得了 357 次收藏

  • 参与了 72 次互动

    互动包含发布评论、点赞评论、参与投票等

TA 关注的
还没有关注其他内容哦
最新评论

TDSQL前沿技术进展和趋势——数据异常基础理论研究

TDSQL前沿技术进展和趋势——数据异常基础理论研究

冰河