线程与进程,多进程与单进程,多线程与单线程
1个回答
展开全部
把 服务器资源 (CPU内存统一)比作是一个物流快递中心,那么这个物流中心的运转能力取决于内部流水线的数量,将快递包裹看作 数据(Data) ,那么流水线(履带式分拣机)看做 进程 ,每个工人的处理各自包裹的过程看做 线程 。
单线程还是多线程完全取决于服务器资源的大小,房间越大则能容纳的流水线的数量越多,相应的数据处理能力越强大,在解决了进程间通信与健壮性前提下,多进程是肯定优于单进程的。但是如果进程过多,或者多个进程峰值占用资源过大,那么服务器资源就会很不稳定,导致内存溢出,cpu超负荷等问题。
单线程好比一个流水线上只有一个工人,那么他处理包裹比较慢、资源浪费,但是出现问题的几率也小,异常追踪快。
多线程就是多个工人使用一个流水线,虽然整体而言处理包裹能力强、资源不浪费,但是会涉及到处理优先级、异常追责、工人之间也会发生摩擦、甚至一些莫名其妙的问题,很显然,线程并不是越多越好。
要避免单进程单线程,也要避免多进程多(过量)线程,更要避免少进程多线程,应该选择多进程少(适量)线程
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询