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