一、进程与线程概述:
- 进程,是并发执行的程序在执行过程中分配和管理资源的基本单位,每一个进程都有一个自己的地址空 间。
- 线程,是进程的一部分,一个没有线程的进程可以被看作是单线程的。线程有时又被称为轻权进程或轻量级进程,也是 CPU 调度的一个基本单位。
- 联系:
-
- 进程拥有一个完整的虚拟地址空间,不依赖于线程而独立存在;
- 线程是进程的一部分,没有自己的地址空间,与进程内的其他线程一起共享分配给该进程的所有资源。
4.区别:
-
- 每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。线程不能够立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。
- 进程就是一个应用程序在处理机上的一次执行过程,它是一个动态的概念,而线程是进程中的一部分,进程包含多个线程在运行。
5. 线程的执行特性:
-
- 线程只有 3 个基本状态:就绪,执行,阻塞。
- 线程存在 5 种基本操作来切换线程的状态:派生,阻塞,激活,调度,结束。
6. 进程通信:
-
- 单机系统中进程通信有 4 种形式:主从式,会话式,消息或邮箱机制,共享存储区方式。
- 主从式典型例子:终端控制进程和终端进程。
- 会话式典型例子:用户进程与磁盘管理进程之间的通信。
7.多进程和多线程:
为何需要多进程(或者多线程),为何需要并发?
多线程/进程,就像一个快餐点的服务员,既要在前台接待客户点 餐,又要接电话送外卖,没有分身术肯定会忙得你焦头烂额的。
多进程/线程技术是这么一种技术,让你可以像孙悟空一样分身,灵魂出窍,乐哉乐哉地轻松应付一切状 况。
并发技术,就是可以让你在同一时间同时执行多条任务的技术。你的代码将不仅仅是从上到下,从左到右这样规规矩矩的一条线执行。
你可以一条线在main函数里跟你的客户交流,另一条线,你早就把你外卖送到了其他客户的手里。
原文地址:https://www.cnblogs.com/loser1949/p/9249818.html
时间: 2024-10-24 14:22:05