并发执行¶
本章中描述的模块支持并发执行代码。 适当的工具选择取决于要执行的任务(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_HANDLE
- STD_OUTPUT_HANDLE
- STD_ERROR_HANDLE
- SW_HIDE
- STARTF_USESTDHANDLES
- STARTF_USESHOWWINDOW
- STARTF_FORCEONFEEDBACK
- STARTF_FORCEOFFFEEDBACK
- CREATE_NEW_CONSOLE
- CREATE_NEW_PROCESS_GROUP
- ABOVE_NORMAL_PRIORITY_CLASS
- BELOW_NORMAL_PRIORITY_CLASS
- HIGH_PRIORITY_CLASS
- IDLE_PRIORITY_CLASS
- NORMAL_PRIORITY_CLASS
- REALTIME_PRIORITY_CLASS
- CREATE_NO_WINDOW
- DETACHED_PROCESS
- CREATE_DEFAULT_ERROR_MODE
- CREATE_BREAKAWAY_FROM_JOB
 
 
- 较旧的高阶 API
- 使用 subprocess模块替换旧函数
- 旧式的 Shell 发起函数
- 备注
 
- 使用 
- sched--- 事件调度器
- queue--- 同步队列类
- contextvars--- 上下文变量
以下是上述某些服务的支持模块: