「必读」|一文读懂多线程

「必读」|一文读懂多线程多少程序员为他而狂热,一个高性能的应用程序根本避不开多线程这个话题。本文不会从cpu调度等角度去阐述,那只会让开发的初学者越来越乱,套用一个场景

大家好,欢迎来到IT知识分享网。

多线程,一个伟大的发明,也是一个老生常谈的问题。多少程序员为他而狂热,一个高性能的应用程序根本避不开多线程这个话题。那么又有多少新手对他心生畏惧。本文将从思想层面上帮你破冰。让你不再畏惧。本文不会从cpu调度等角度去阐述,那只会让开发的初学者越来越乱,套用一个场景,让你理解。

正文开始

网上对于多线程的文章,铺天盖地,但是基本都站在服务器的角度去阐述多线程是如何工作的,都在阐述一个人是如何同时干多个工作的。那么今天,我将站在团队的角度去阐述什么是多线程。对,就是我们身边的团队。

「必读」|一文读懂多线程

一个团队的合作,其实就可以理解成为多线程协同工作的过程。

团队搭建第一步

有一天,你想做一个项目,什么项目都好,无论你身处什么样的行业,你都需要一个团队。在这个团队中,你就是主角,是发号命令的人,是团队的领导者。但是你一个人干不成这件事,或者说你一个人要完成这件事的效率非常低,那么此时你就需要一些人来帮助你。

此时,你委托了一些招聘网站,帮助你来进行招聘的工作。

那么在代码中,该如何表示这样一个过程呢?

「必读」|一文读懂多线程

团队搭建成功后

委托招聘网站,招聘了很多的人

「必读」|一文读懂多线程

「必读」|一文读懂多线程

此时,人员已经到齐,你可以让团队中其他的成员分担一部分你的工作。也许他们没有你做的好,也许他们会出各种乱子,也许一开始你们的合作并没有提高你多少效率,反而给你带来了很多的烦恼。

那么这种感觉,也就是你初期开始学习多线程时的感觉。

他们还不理解你的工作风格,时常会把你已经修改好的文件又乱改一通(变量共享后,重新赋值)

「必读」|一文读懂多线程

每次你用的时候,会发现他已经变了。这是一个悲凉的故事。

「必读」|一文读懂多线程

转变

这个时候,你发现这样不行,我们必须建立某种机制,才能保证团队的正常运转,比如发现文档已经被修改成为2时,则不用修改了

「必读」|一文读懂多线程

团队随着配合的时间越来越长,磨合的也会越来越好

「必读」|一文读懂多线程

大结局

慢慢的,你对团队了解的越来越多(对多线程越来越熟悉),你懂得了更多的方法来进行团队的配合。

比如说通过锁的机制,来控制某种情况下,大家无需并行工作。

通过你聪明的大脑、精密的思考下,你避免了两个团队成员之间相互依赖的工作关系(死锁),导致工作一直完不成。

最终你将团队总效率提升了好几倍。这就是团队的力量,也是多线程在编程中的力量。

它会大大的提高你程序的效率。

写在最后

多线程编程特别有意思,里边涉及到了很多的知识点,也是最考验一个人逻辑思维能力的地方。所以不要畏惧,作为初学者更应该去拥抱,去学习。到最后,你可能收获的不仅仅是技术能力的提升,还有更多的惊喜哦。

其实编程的很多技术,都可以对应到我们身边很多的应用场景上。那么你是leader,你就是主线程。

关于多线程更多的技术(同步锁、线程锁、递归锁、死锁、悲观锁、乐观锁等)和应用场景的讨论也可以在评论区进行讨论。

「必读」|一文读懂多线程

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/47378.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信