CGRW_BLOG


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

J.U.C并发框架之AQS(四):ReentrantLock公平锁

发表于 2018-05-26 | 分类于 多线程 | 阅读次数:
字数统计: 3,276 | 阅读时长 ≈ 16

本篇继续之前的系列,解析ReentrantLock公平锁。

阅读全文 »

线程池源码解析

发表于 2018-05-23 | 分类于 多线程 | 阅读次数:
字数统计: 4,030 | 阅读时长 ≈ 17

本篇主要解析线程池源码,最大的看点在于对shutdown()和shutdownNow()的比较分析以及对线程复用的深入研究,源码中还有很多巧妙的设计,比如ctl等,文章中相关的部分也会一并谈到。

阅读全文 »

J.U.C并发框架之AQS(三):ReentrantLock中断锁

发表于 2018-05-22 | 分类于 多线程 | 阅读次数:
字数统计: 1,002 | 阅读时长 ≈ 5

本篇文章将研究ReentrantLock中断锁,首先提两个问题预热:中断锁触发的时机是什么时候?中断锁响应中断后,线程接下来做什么?

阅读全文 »

Future模式

发表于 2018-05-21 | 分类于 设计模式 | 阅读次数:
字数统计: 932 | 阅读时长 ≈ 4

该模式的主要思想是:当你调用方法后,会开启新线程运行方法体,方法体可能不会马上计算出真正结果,但是方法会先给你返回一个值,让你不必一直守在这里等待,你可以去办其它事情,等未来真正需要方法体计算出的结果的时候,再尝试获取。

阅读全文 »

J.U.C并发框架之AQS(二):ReentrantLock释放锁

发表于 2018-05-21 | 分类于 多线程 | 阅读次数:
字数统计: 1,543 | 阅读时长 ≈ 7

当一个线程执行结束,是怎么唤醒后续线程的?一个线程cancel后是怎样出队的?上一篇主要分析了获取锁,这一篇将聚焦释放锁以解答自己的困惑。本篇还是承接《J.U.C并发框架之AQS(一):ReentrantLock获取锁》的实验用例,锁限定为非中断且非公平且独占的情形,而中断锁、非公平锁以及独占锁的研究将在后续开专篇解析。

阅读全文 »

J.U.C并发框架之AQS(一):ReentrantLock获取锁

发表于 2018-05-20 | 分类于 多线程 | 阅读次数:
字数统计: 3,099 | 阅读时长 ≈ 13

解析ReentrantLock,就是解析AQS!但后者毕竟是一个框架,大而全,且部分功能交由子类重现,不容易找到一个阅读源码的切入点,所以不妨从ReentrantLock开始,先理解AQS实现的独占锁。在解析的过程中,对一些过于简单的细节,不再堆砌,只抓核心功能的实现部分。本解析采用的是jdk1.8.0_171。

阅读全文 »

J.U.C并发框架之CAS

发表于 2018-05-19 | 分类于 多线程 | 阅读次数:
字数统计: 1,262 | 阅读时长 ≈ 5

本篇将入门J.U.C并发框架CAS,会对一部分源码进行解析。

阅读全文 »

线程生命周期 & 中断机制

发表于 2018-05-17 | 分类于 多线程 | 阅读次数:
字数统计: 3,520 | 阅读时长 ≈ 15

这一篇主要涉及线程的生命周期和中断机制,对Thread类下的interrupt()源码进行了解析。

阅读全文 »

Git带着问题去实践(四)

发表于 2018-05-15 | 分类于 Git | 阅读次数:
字数统计: 709 | 阅读时长 ≈ 3

本篇主要用来入门Git协作。

阅读全文 »

Git带着问题去实践(三)

发表于 2018-05-11 | 分类于 Git | 阅读次数:
字数统计: 1,514 | 阅读时长 ≈ 7

本篇继续之前系列,实践变更、回滚提交的操作。

阅读全文 »
1…789…15
Cgrw

Cgrw

146 日志
43 分类
117 标签
GitHub E-Mail
© 2021 Cgrw
由 Hexo 强力驱动
|
主题 — NexT.Pisces v5.1.4