Java Core

Java Core 文集,包括 Java 核心知识,集合源码解析,Java 核心概念

一文秒懂 Java 并发

chenssy阅读(867)评论(2)赞(1)

一文秒懂 Java ExecutorService 一文秒懂 Java Fork/Join 一文秒懂 Java 线程池 ( Thread Pool ) (上) 一文秒懂 Java 线程池之 ThreadPoolExecutor 一文秒懂 S...

一文秒懂 Java wait() 和 notify() 方法

chenssy阅读(169)评论(0)赞(0)

大家有没有发现,其实 「 一文秒懂 」 系列讲述的都是多线程并发开发的问题。这个话题太大了,估计没有上百篇文章都解释不清楚。 本文,我们来讲解下 Java 并发中的基础的基础,核心的核心,Java 并发编程中的最基本的机制之一 - 「 线程...

一文秒懂 Java 之 Runnable 还是 Thread ?

chenssy阅读(131)评论(0)赞(0)

写 Java 代码的时候,我们经常会有这样的疑问:我到底是实现一个 Runnable 呢,还是扩展一个 Thread 类? 你的答案是什么呢? 那有没有标准答案呢? 答案是什么呢? 我们先来分析下,看看哪种方法在实践中更有意义以及为什么? ...

一文秒懂 Java Thread 生命周期

chenssy阅读(127)评论(0)赞(0)

本文中,我想详细的讨论下 Java 中的核心概念 - 线程的生命周期。我会使用一张我自制的图片加上实用的代码片段,一步一步的详细剖析线程的各个状态和各个状态之间如何转换。 Java 中的多线程 Java 语言中, 多线程是由 Thread ...

一文秒懂 Java ThreadLocalRandom

chenssy阅读(99)评论(0)赞(0)

随机数生成是一个非常常见的操作,而且 Java 也提供了 java.util.Random 类用于生成随机数,而且呢,这个类也是线程安全的,就是有一点不好,在多线程下,它的性能不佳。 为什么多线程下,Random 的性能不佳? 因为,它采用...

一文秒懂 Java java.util.concurrent.Future

chenssy阅读(85)评论(0)赞(0)

写了几篇 Java 一文秒懂 XXX 系列的文章后,对 Java 并发编程的设计思想真的是竖然起敬。 Java 在并发方面引入了 「 将来 」( Future ) 这个概念。把所有不在主线程执行的代码都附加了将来这个灵魂。主线程只负责其它并...

一文秒懂 Java 守护线程 ( Daemon Thread )

chenssy阅读(71)评论(0)赞(0)

在这篇简短的文章中,我们将讲解下 Java 中的守护线程,看看它们可以做什么。我们还将解释守护线程和用户线程之间的区别。 守护线程和用户线程的区别 Java 提供了两种类型的线程:守护线程 和 用户线程 用户线程 是高优先级线程。JVM 会...

一文秒懂 Java BlockingQueue

chenssy阅读(81)评论(0)赞(0)

本文中,我们将介绍一个 java.util.concurrent 包提供的用于解决并发生产者 - 消费者问题的最有用的类 - BlockQueue。我们将介绍BlockingQueue 接口的 API 以及如何使用该接口的方法使编写并发程序...

一文秒懂 Java CountDownLatch

chenssy阅读(125)评论(0)赞(0)

本章节我们来讨论下 java.util.concurrent.CountDownLatch 这个类,顺带演示下如何在一些实际例子中使用它。 CountDownLatch 类的作用呢? 怎么说呢? 简单来说,我们可以使用它来阻塞线程,直到其他...

一文秒懂系列之 Java 并发编程面试题

chenssy阅读(157)评论(0)赞(0)

应聘 Java 岗,总是免不了几个 Java 并发编程的面试题,不过大多数都局限在 java.util.concurrent 包下的知识和实现问题。本文针对 Java 并发相关的常见的面试题做一些解释。 Q1: 进程和线程的区别? 这是一个...

一文秒懂 Java CompletableFuture ( 下 )

chenssy阅读(75)评论(0)赞(0)

上一章节中我们讲解了 CompletableFuture 的一些基本用法,比如如何使用和如何处理异步计算结果。本章节我们继续,主要讲解如何使用 CompletableFuture 来组合异步计算的结果 组合 Futures Completa...

一文秒懂 Java CompletableFuture ( 上 )

chenssy阅读(145)评论(0)赞(0)

本文我们来了解下 Java 8 引入的 CompletableFuture 类,了解下该类提供的功能和用例。 Java 中的异步计算 异步计算很难推理的,因为我们的大脑是同步的,会将任何计算看成是一系列的同步计算。 我们在实现异步计算时,往...

一文秒懂 Java Google Guava 实现

chenssy阅读(147)评论(0)赞(0)

Guava 是托管在 Github.com 上的流行的 Google 开源的 Java 线程池库。 Guava 包含了许多有用的并发类,同时还包含了几个方便的 ExecutorService 实现,但这些实现类都无法通过直接实例化或子类化来...

一文秒懂 Java ForkJoinPool

chenssy阅读(99)评论(0)赞(0)

ForkJoinPool 是Java 7 中引入的 fork/join 框架的核心之一。它解决了一个常见的问题: 如何在递归中生成多个任务。因为,即使是使用一个简单的 ThreadPoolExecutor ,也会在不断的递归中快速耗尽线程。...