并发编程之 线程与进程、什么是多线程?并行和并发有什么区别?

1.线程是什么?进程是什么?二者有什么区别和联系?

  1. 进程:程序运行资源的最小单位,进程内部有多个线程,会共享这个进程的资源
  2. 线程:是CPU独立运行和独立调度的基本单位,必须依赖进程而存在

两者的联系:进程和线程都是操作系统所运行的程序运行的基本单元。
区别:
(1)进程具有独立的空间地址,一个进程崩溃后,在保护模式下不会对其它进程产生影响。
(2)线程只是一个进程的不同执行路径,线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉。

2. 什么是多线程?

多线程:是指从软件或者硬件上实现多个线程的并发技术。
多线程的好处:
(1)使用多线程可以把程序中占据时间长的任务放到后台去处理,如图片、视屏的下载
(2)发挥多核处理器的优势,并发执行让系统运行的更快、更流畅,用户体验更好
多线程的缺点:
(1)大量的线程降低代码的可读性;
(2)更多的线程需要更多的内存空间
(3)当多个线程对同一个资源出现争夺时候要注意线程安全的问题。

3. 并行和并发有什么区别?

  1.  并行:是指同一时刻可以同时处理事情的能力(举例: 比如告诉公路上有8个窗口 , 所以同一时刻,高速公路可以放行的车辆是8辆,所以就说并行的数量是8)
  2. 并发: 是指单位时间内,可以处理事情的能力[特别注意这个单位时间]
    1. 举例: 接上 并行的例子 , 比如一个窗口处理一辆车的需要10秒钟,那么一分钟 这个收费站的并发量6*8=48,也就是说,这个收费站并发量是48量/分钟
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值