进程与线程
1、什么是进程、线程,有什么区别?
进程是资源(CPU、内存等)分配的基本单位,线程是 CPU 调度和分配的基本单位(程序执行的最小单位)。如果 CPU 是单核,同一时间只有一个进程在执行,多核 CPU 可以同一时间点有多个进程在执行。
2、多进程、多线程的优缺点
一个进程由进程控制块、数据段、代码段组成,进程本身不可以运行程序,而是像一个容器一样,先创建出一个主线程,分配给主线程一定的系统资源,这时候就可以在主线程开始实现各种功能。
当我们需要实现更复杂的功能时,可以在主线程里创建多个子线程,多个线程在同一个进程里,利用这个进程所拥有的系统资源合作完成某些功能。
优缺点:
一个进程死了不影响其他进程,一个线程崩溃很可能影响到它本身所处的整个进程。
创建多进程的系统花销大于创建多线程。
多进程通讯因为需要跨越进程边界,不适合大量数据的传送。多线程无需跨越进程边界,适合大量数据的传送。
3、什么时候用进程,什么时候用线程
创建和销毁较频繁使用线程,因为创建进程花销大。
需要大量数据传送使用线程,因为多线程切换速度快,不需要跨越进程边界。
安全稳定选进程;快速频繁选线程;
-
cpu
+关注
关注
68文章
10854浏览量
211568 -
Linux
+关注
关注
87文章
11292浏览量
209318 -
线程
+关注
关注
0文章
504浏览量
19675
发布评论请先 登录
相关推荐
评论