java架构师多线路基础篇

   多线程,所解决的问题就是在同一时刻有多条路径去执行相同的代码块,当然,这是理论上的。提起多线程,就不得不说一下两个概念:进程和线程。

线程:线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行

进程:每个正在系统上运行的程序都是一个进程.每个进程包含一到多个线程。

综上所述:进程是所有线程的集合,每一个线程是进程中的一条执行路径。

1:为什么使用多线程?

主要能体现到多线程提高程序效率。举例: 迅雷多线程下载、数据库连接池、分批发送短信等。

误区:多线程不可以提高代码运行的速度,多线程只是提高程序的效率。比如:多线程下载中,只是多条线程去下载文件不同文件段,最后都现在完成时进行文件段的合并操作,而不是多线程提高了网速,多线程不会使文件下载的速度变快,像百度网盘、迅雷之所以速度变快,个人猜测是他们这些软件和网络运行上有合作,是针对性的提高了下载带宽而已。

2:多线程实现的三种方式

第一种:继承Thread类,重写run方法

输出结果:

再次运 行  :      

注意:两次执行的结果不同,其实几乎每次执行的结果都不相同,这是因为cpu对线程分配造成的。

第二种方法:实现Runnable接口,重写run方法

第三种方式:使用匿名内部类方式

根据自己的需求,确认使用哪种方式,方式无优先,解决问题才是关键,黑猫白猫都是猫,抓住老鼠的才是好猫。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容