Linux线程与进程


进程

进程是程序的执行,允许你执行程序中指定的相应操作。它可以定义为程序运行的执行单元。操作系统帮助你创建、调度和终止CPU使用的进程。主进程创建的其他进程称为子进程。

线程

线程是进程的一部分,是一个执行单元。一个进程可以有多个线程,所有线程同时执行。它是并发编程中的执行单元。

请考虑下表,它从不同方面描述了进程和线程的区别。

比较依据进程线程
定义进程是正在执行的程序。线程是执行单元。
上下文切换时间进程上下文切换时间较长,因为它们较重。线程上下文切换时间较短,因为它们比进程轻量。
内存进程完全独立,不共享内存。线程共享内存。
通信进程间通信比线程间通信耗时更长。线程间通信比进程间通信耗时更短。
资源消耗进程比线程消耗更多资源。线程通常比进程需要更少的资源。
依赖性各个进程彼此独立。线程是进程的一部分,因此是相互依赖的。
数据和代码共享进程拥有独立的数据和代码段。线程与其同级线程共享数据段、代码段、文件等。
操作系统处理操作系统分别处理所有不同的进程。操作系统将所有用户级同级线程视为单个任务。
创建时间进程创建需要更多时间。线程创建需要更少时间。
终止时间进程终止需要更多时间。线程终止需要更少时间。

更新于:2021年7月31日

3K+ 次浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.