这是我在极客学院买的一门课程的第一课。确实有收获。
在以前我觉得学习任何技术就是看如何使用,理论是辅助性的。看了这篇文章后觉得理论更重要,从理论可以看到技术的整体而不仅仅知识某一个语言的一个具体实现。
就比如Java并发技术,内容真的很多,synchronized,锁,并发容器,Executor等。这篇课程的作者将这些内容总结为分工、同步、互斥三种内容。
分工很容易理解,多线程程序第一个必须考虑如何将工作分配到多个进程中对吧,这就是分工。
同步也容易理解,因为多线程工作,我们肯定希望这些线程之间是有配合的,在一定条件下哪个线程应该执行某个逻辑,这就是同步。
最后一个是互斥,这部分说的是并发安全的内容。因为多线程之间同时访问、修改同一个共享变量的情况是普遍存在的,所以必须考虑安全。
原创文章,作者:geekgao,如若转载,请注明出处:https://www.geekgao.cn/archives/2699