并发执行¶
本章中描述的模块支持并发执行代码。 适当的工具选择取决于要执行的任务(CPU密集型或IO密集型)和偏好的开发风格(事件驱动的协作式多任务或抢占式多任务处理)。 这是一个概述:
threading--- 基于线程的并行active_count()current_thread()excepthook()__excepthook__get_ident()get_native_id()enumerate()main_thread()settrace()settrace_all_threads()gettrace()setprofile()setprofile_all_threads()getprofile()stack_size()TIMEOUT_MAX- 线程本地数据
 - 线程对象
 - 锁对象
 - 递归锁对象
 - 条件对象
 - 信号量对象
 - 事件对象
 - 定时器对象
 - 栅栏对象
 - 在 
with语句中使用锁、条件和信号量 
multiprocessing--- 基于进程的并行multiprocessing.shared_memory--- 可跨进程直接访问的共享内存concurrent包concurrent.futures--- 启动并行任务subprocess--- 子进程管理- 使用 
subprocess模块 - 安全考量
 - Popen 对象
 - Windows Popen 助手
STARTUPINFO- Windows 常数
STD_INPUT_HANDLESTD_OUTPUT_HANDLESTD_ERROR_HANDLESW_HIDESTARTF_USESTDHANDLESSTARTF_USESHOWWINDOWCREATE_NEW_CONSOLECREATE_NEW_PROCESS_GROUPABOVE_NORMAL_PRIORITY_CLASSBELOW_NORMAL_PRIORITY_CLASSHIGH_PRIORITY_CLASSIDLE_PRIORITY_CLASSNORMAL_PRIORITY_CLASSREALTIME_PRIORITY_CLASSCREATE_NO_WINDOWDETACHED_PROCESSCREATE_DEFAULT_ERROR_MODECREATE_BREAKAWAY_FROM_JOB
 
 - 较旧的高阶 API
 - 使用 
subprocess模块替换旧函数 - 旧式的 Shell 发起函数
 - 备注
 
- 使用 
 sched--- 事件调度器queue--- 同步队列类contextvars--- 上下文变量
以下是上述某些服务的支持模块: