面试宝典系列-多线程和多进程区别

本文探讨了多线程和多进程的概念及其在软件开发中的应用。文章指出了两者的相同之处及主要区别,包括内存共享方式、系统资源消耗情况,并详细分析了多线程在实际使用中可能遇到的问题,如同步问题、锁机制的影响、线程死锁及线程错误处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多进程和多线程其实是作用是相同的。区别是

1.    线程是在同一个进程内的,可以共享内存变量实现线程间通信

2.    线程比进程更轻量级,开很大量进程会比线程消耗更多系统资源

多线程也存在一些问题:

1.    线程读写变量存在同步问题,需要加锁

2.    锁的粒度过大会有性能问题,可能会导致只有1个线程在运行,其他线程都在等待锁。这样就不是并行了

3.    同时使用多个锁,逻辑复杂,一旦某个锁没被正确释放,可能会发生线程死锁

4.    某个线程发生致命错误会导致整个进程崩溃

转载于:https://my.oschina.net/suyain/blog/1858743

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值