Java教程

【金秋打卡】第二十一天+多线程是什么

本文主要是介绍【金秋打卡】第二十一天+多线程是什么,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程名称:2小时搞定多线程概念

课程章节:第三章节

主讲老师:悟空

课程内容:

这节课讲了多线程的一些知识:

  1. 什么是多线程

    1. 如果一个程序允许两个或者以上的线程,那么它就是多线程程序,多线程,是指在单个进程中运行多个线程

    2. 火锅的案例  +  屋子里住人的案例

  2. 为什么需要多线程

    1. 阿姆达尔定律:处理器愈多,程序执行越快,但是有上限。取决于串行比例,串行比例越多,速度越慢,并行比例越高,速度越快

    2. 把事情都分解为ABCD,以后来这种事情,都走ABCD流程

    3. 提高处理速度

    4. 避免无效等待(IO的时候可以做别的时候)

    5. 提高用户体验,避免卡顿,缩短等待时间

    6. 并行处理,提高性能,比如tomcat,用多个线程去处理请求,而不是一个一个的串行等待处理

    7. 主要是提高cpu利用率,让多核cpu有发挥多核的用处

    8. 便于编程建模

    9. 计算机性能定律,摩尔定律失效,阿姆达尔定律生效

  3. 多线程的局限

    1. 性能:上下文切换带来的消耗

    2. 异构化任务:任务结构不同,很难并行

    3. 线程安全问题,假如配合出错,那么数据就会出错,比如线程饥饿和死锁

课程收获:

这节课重点在于理解多线程是什么,为什么需要多线程,以及摩尔定律的失效,还有阿姆达尔定律的兴起,以及多线程的局限。

重点还是在与我们怎么样运用多线程,凡事有利就有弊,这是肯定的,总的来说,这章内容还是偏理论。





这篇关于【金秋打卡】第二十一天+多线程是什么的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!