进程和线程的区别

如今是一个多核CPU的时代,多核CPU也就是同时能运行多个进程,这也就实现了并发编程。通过多进程来实现并发编程,效果是挺好的,但也有明显的缺点。创建、调度、销毁一个进程,就会有一定的系统开销,比如申请内存,分配内存,释放内存等,会消耗许多时间和资源,效率不高。因此,为了提高电脑的性能,人们就引入了多线程,同样可以实现并发编程。通过多线程的方式,系统的开销比多进程要小得多。那么,多进程和多线程有什么区别呢?

(1)进程包含线程,一个进程包含一个或多个线程

(2)多进程,各个进程之间相互独立,不相互影响,一个进程的销毁不会影响其他进程的运行。

而多线程,一个进程包含一个或多个线程,某个线程出现异常,可能会影响其他线程的运行(线程安全问题)。

(3)每创建一个进程,操作系统都会为每一个进程分配资源(内存,硬盘,CPU等资源),即每个进程独占系统资源。而对于多线程,一个进程包含多个线程,多个线程共用此进程的内存和硬盘资源创建线程不需要额外申请内存和硬盘资源,节省了一定的系统开销。

(4)进程是系统资源分配的基本单位,线程是系统调度执行的基本单位。

(5)多进程和多线程都可以实现并发编程,但多线程更轻量,系统开销更小,效率更高

  • 14
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值