You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
6.3 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 3 个用户来信 | 打开一个新的并发世界
你好,我是王宝令。
很高兴能再次收到用户的来信,一下子还是 3 封,真是受宠若惊。
通过大家的来信、留言,我深刻感受到大家学习的欲望和热情,也很感谢你们能跟着我一起,把并发这么难啃的知识点都**“嚼碎了”——“吃下去”——“消化掉”**,变成自己的东西。
**脚踏实地,才能仰望天空。**
**来信一:他说,这是一盏明灯,可以带你少走很多弯路,正确前行,野蛮生长。**
你好我是笑笑17届杭师大计算机毕业的学生现在一个电商互联网公司做 Java开发。
在没有学习这个专栏之前,我自己也曾读过一些并发编程相关的书,但那时刚毕业,看完后也仅仅是知道了并发的概念、并发产生的原因,以及一些并发工具类的使用,整体处于“了解”阶段,距离“掌握”还很远。所以,看到“极客时间”出并发编程的专栏后,我立马就订阅了。
**第一个感受:宝令老师的讲解思路特别清晰,由简入深**。为什么会出现这些技术、这些技术带来的影响点以及如何能更合理地使用这些技术等内容,都阐述得清清楚楚。整个专栏下来,宝令老师带我“游览”并看清了并发编程的全貌。
**第二个感受:清晰简洁,理论和实践并行**。每次读完老师的文章后,先前很多模糊的知识点都变得更加地清晰,比如:
1. 可见性是由于在多核时代每颗CPU都有自己的缓存导致的具体看[《01 | 可见性、原子性和有序性问题并发编程Bug的源头》](https://time.geekbang.org/column/article/83682)
2. 锁要和资源关联起来,一个锁可以锁多个资源,但是一个资源不可以用多个锁,可类比球赛门票的管理,点击温故[《03 | 互斥锁(上):解决原子性问题》](https://time.geekbang.org/column/article/84344)
3. Java 线程的生命周期与操作系统线程生命周期的相通点以及区别,可参考[《09 | Java线程Java线程的生命周期》](https://time.geekbang.org/column/article/86366)
4. 结合例子来带你理解 Happens-Before 规则,具体看[《02 | Java内存模型看Java如何解决可见性和有序性问题》](https://time.geekbang.org/column/article/84017)。
……
总之 ,十分感谢宝令老师这几个月的付出。想必很多同学都跟我一样,不能说看了专栏我们并发的能力一下子变得多么多么厉害(这也不现实)。但,**它绝对是一盏明灯,给我们指明了方向,让我们在并发的道路上少走很多弯路,正确前行,野蛮生长**。
**宝令回信:**
很高兴能够为你答疑解惑,学习最怕的是没问题,只要有问题就一定能找到答案,探索的过程就是提升的过程。也感谢你这几个月的支持和信任!
* * *
**来信二他说于是我有了自己的“Java并发编程全景图”。**
你好,我是华应,互联网行业的一名非著名程序员。
关于并发编程的学习,我也曾多次尝试学习,从不同的切入点或者方法学习过,但都不得要领。 看了宝令老师专栏的试读文章后,我发现每句话都戳中自己学习过程中的痛处,就决定跟着了。
让我印象比较深刻的是在第一部分“并发理论基础”的最后老师专门拿出了一篇文章来为大家答疑每个问题都非常经典涉及到CPU、缓存、内存、IO、并发编程相关的操作系统层面的线程、锁、指令等知识点为我打开了并发新世界。同时我把难啃的知识放在了自己技能全景图中时时温故知新。
总体来说,学习完这个专栏后,我获益良多,**不仅是对并发编程有了系统化的理解,也第一次针对并发编程绘制出了自己的全景图**(如下图)。生有涯而学无涯,相信这些知识图谱定能给我指明前进方向,点亮我的技术人生。
真心谢谢宝令老师,希望老师能再出更多的专栏,我们江湖再见!
![](https://static001.geekbang.org/resource/image/f2/24/f2351fe16ea4d0533f1a3bc1d32a2624.png)
**宝令回信:**
系统化地学习很重要,这样遇到问题不会迷茫。感谢你分享的全景图,教学相长,我们互相学习!
* * *
**来信三:他说,如今每做一个需求,都会对其资源消耗、时间损耗和并发安全有进一步的思考和优化。**
你好,我是小肖,在深圳的一家金融公司负责后端业务开发。
想起学并发编程,是**因为在找工作时,经常会有面试官问我有没有并发经验,这时我才意识到自己在并发方面的不足**。但由于整天沉浸在各种业务代码的CRUD中而且公司用户数量不大导致自己接触的并发场景少完全缺少理论+实战经验。
所以当“极客时间”出了《Java并发编程实战》这门课后我立马就订阅了同时也对宝令老师的分享充满了期待。
事实证明老师分享的知识深度广度让我叹为观止干货非常之多许多知识也很贴近实战。比如在第二部分“并发工具类”的14篇文章里我跟着学会了如何用多线程并行操作来优化程序执行时间以及如何用线程通信来让程序执行得更高效。
就这样,从头到尾跟下来后,我收获颇丰!
现在,我也尝试着把我学到的知识点用于项目中,不断优化自己的代码。**如今我开始每做一个需求,都会对其资源消耗、时间损耗和并发安全多进行一步思考和优化**。这些都为我的项目成功上线起到了重要的保障作用,我的同事也开始夸奖我并发方面的表现突出。这是我最开心和欣慰的地方。
由此,我想感谢宝令老师,是发自内心且由衷地感谢。感谢老师这几个月的一直陪伴,感谢老师分享的知识让我向着理想更进了一步,感谢老师怀揣着对技术的执着之心激励我初心依旧。
**宝令回信:**
你这么快就能在工作中熟练使用了,这是我最开心和欣慰的地方。学会怎么思考并且在工作中实践,进步一定很快。祝在工作中更上一层楼!