We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent c485d44 commit 370f133Copy full SHA for 370f133
md/详细分析/04线程池.md
@@ -0,0 +1,26 @@
1
+# 线程池
2
+
3
+## 前言
4
5
+我相信,已经阅读到这里的各位,不会对“*线程池*”这个词感到陌生。大部分开发者早就自己使用、学习,乃至实现过线程池。那不如我们先来进行一下基础的名词解释。
6
7
+- ***什么叫线程池?***
8
9
+“**线程**”没什么好说的,是 CPU 调度的最小单位,也是操作系统的一种抽象资源。
10
11
+“**池**”?水池装着水,线程池则是装着线程,是一种抽象的指代。
12
13
+抽象的来说,可以当做是一个池子中存放了一堆线程,故称作线程池。简而言之,线程池是指代一组**预先创建的**、**可以复用的线程集合**。这些线程由线程池管理,用于执行多个任务而**无需频繁地创建和销毁**线程。
14
15
+使用线程池的益处我们已经加粗了,然而这其实并不是“*线程池*”独有的,任何创建和销毁存在较大开销的设施,都可以进行所谓的“***池化***”。
16
17
+常见的还有:**套接字连接池**、**数据库连接池**、**内存池**、**对象池**。
18
19
+---
20
21
+了解以上这些基础概念是第一步也是最后一步,随着水平的提升,对这些概念认知与理解也会逐渐提升。
22
23
+## 实现线程池
24
25
+实现一个普通的能够满足日常开发需求的线程池实际上非常简单,也只需要一百多行代码。
26
md/详细分析/README.md
@@ -1,3 +1,4 @@
# 详细分析
-放一些详细分析源码实现之类的内容。
+存放一些源码分析,以及一些其它非知识点,而是应用的造轮子(如线程池),或者其它扩展讲解。
0 commit comments