什么是多线程?
在操作系统上,所有的应用程序都是通过进程来运行的。当一个应用程序启动时,操作系统会为该应用程序创建一个或多个进程,并为这些进程分配必要的资源,如内存空间、文件句柄等,以协助应用程序的运行。
在进程内部,可以同时存在多个线程。这些线程共享同一进程的地址空间和其他资源(如文件描述符、已打开的网络连接等),但它们各自拥有独立的执行栈和程序计数器。因此,线程之间的通信和同步变得相对简单,因为它们可以直接访问和修改共享的数据结构。
线程是操作系统调度CPU的基本单位。这意味着操作系统在分配CPU时间片给不同的任务时,是以线程为单位进行的。由于线程之间的切换开销相对较小(因为它们共享同一进程的地址空间),多线程编程可以有效地提高系统的并发性和响应性。
但是,值得注意的是,虽然线程是CPU调度的基本单位,但进程在操作系统中仍然扮演着至关重要的角色。进程是系统资源分配的基本单位,每个进程都有独立的内存空间和系统资源集。因此,进程之间的隔离性更强,一个进程的崩溃通常不会影响其他进程的运行。
【解决问题】怎么可以同时大量处理多个任务?
【解决的办法】多线程(threading模块)、多进程 (multiprocessing模块)两种办法
【生命周期】
标签:操作系统,python,应用程序,线程,进程,多线程,CPU From: https://www.cnblogs.com/liu-Gray/p/18260214