死锁
引入 现实世界里,账户转账操作是支持并发的,而且绝对是真正的并行,银行所有的窗口都可以做转账操作。只要我们能仿照现实世界做转账操作,串行的问题就解决了。 我们试想在古代,没有信息化,账户的存在形式真的…
目标 路径 时间 结果 信息 定位 闭环 复盘 精力 极限 稳态 框架 邮箱:linqingyang@datagov.top
引入 现实世界里,账户转账操作是支持并发的,而且绝对是真正的并行,银行所有的窗口都可以做转账操作。只要我们能仿照现实世界做转账操作,串行的问题就解决了。 我们试想在古代,没有信息化,账户的存在形式真的…
图解线程池的工作原理 为什么需要线程池? 在解释为什么需要线程池这个问题之前,我们可以先来回顾下 TCP 的长短连接: TCP 短连接:客户端和服务端之间每进行一次通话,就进行三次握手建立连接,四次握…
CountDownLatch 与 CyclicBarrier J.U.C 为我们封装了一些有用的控制并发流程的工具,CountDownLatch、CyclicBarrier、Semaphore 以及 …
线程安全的集合总览 集合框架体系总览 讲线程安全的集合之前我觉得有必要回顾下整个 Java 集合框架的体系,不过由于不是本专栏的核心内容,所以这里我就简单介绍下哈,不了解的各位可以看这里:Java 集…
通俗易懂之 AQS 为什么有了 synchronized 还需要 Lock? 之前我们说过,Java 有两套锁实现,一个就是原生的 synchronized 关键字,另一个就是实现了 Lock 接口的…
Java 并发中的各种“锁”事 锁能做什么?众所周知,锁是来控制多个线程访问共享资源的方式。一般来说,一个锁能够防止多个线程同时访问共享资源,保证原子性(但是有些锁可以允许多个线程并发的访问共享资源,…
一文读懂 CAS 把 CAS 放在整个并发系列的这个位置,主要原因就是接下来我们将要学习到的 J.U.C 并发包中的很多类都涉及到了 CAS,可以说没有 CAS 和 volatile 就没有 J.U….
一、重磅开篇-形成完善的多线程世界观 多线程这部分内容确实比较高深而且每个知识点之间比较零散,让人摸不着头脑,不知道该从哪里下手。而且对于大部分学生群体来讲,很少有机会接触到高并发这方面的真实场景,平…
基础知识扫盲 三大并发关键字 CAS Java 中锁的另一套实现 — Lock 接口 并发集合 并发工具类 线程池 结语 ↓ “生活可能不像你想象的那么好,但是也不会你想象的那么糟。人的脆弱和坚强,都…
并发编程基本概念 程序 人为编写或自动生成的代码,保存在文件中,程序本身是静态的。 如果要运行程序,需将程序加载到内存,通过编译器或解释器翻译为计算机理解的方式运行。 编程语言:汇编语言、C/C++、…