Python 多任务 学习一
概述:
1. 进程和线程
定义1:一个 程序 就是一个二进制的.exe可执行文件,当它被运行时,这就是一个进程,进程是系统进行资源分配的最小单位。
exe(被执行) ------> (代码 + 系统分配的资源) = 进程
定义2:进程会产生最少一个线程(主线程),线程使用进程的资源来执行这个程序代码;
定义3:多进程,是一个主进程中,创建多个子进程,系统会分配与主进程相同的一份资源(cpu,内存,显卡,等等)给子进程。这时,主进程中依然是主线程向下执行代码,各子进程创建自己的‘主线程’来向下执行。
定义4:多线程,是一个主进程中的主线程下,创建多个子线程,每个子线程继续向下执行。
(比如,一个QQ程序,在整个QQ运行进程中,包含收信息,发信息,视频通话等等多个功能,当多个功能同时在使用时,会创建多个 子进程 或 子线程 出来用以执行操作)
2. 多任务形式
多任务的形式有:并行、并发
如:多进程:( 主线程 + 子进程 ) + 系统分配资源
主线程执行进程的代码;子进程分别创建自己的主线程,并使用线程向下执行。
并行: 真.多任务。多进程中,每个子进程分别分配给一个CPU核心和其它资源,多个核心下,每个 子进程的 '主线程' 同时运行。
并发: 伪.多任务。操作系统分配 '时间片' 轮转,多个 子线程共用主进程核心,同一时间只有一个子线程运行,系统不停切换线程,看起如同同时运行,实际上是线程不停切换。
(补充:一般我们电脑中的程序运行,大都是并发的情况,因为CPU的核数多数都是比执行的线程少,每个核心都会处理多个任务)
3. 创建子线程:threading.Thread的基本用法
导入python库 threading
使用threading.Thread创建子线程


浙公网安备 33010602011771号