What is the difference between multiprocessing and subprocess?(多进程和子进程有什么区别?)
问题描述
我的工作应该使用并行技术,我是 python 的新用户.所以我想知道你是否可以分享一些关于 python multiprocessing
和 subprocess
模块的材料.这两者有什么区别?
My work should use parallel techniques, and I a new user of python. So I wonder if you could share some material about the python multiprocessing
and subprocess
modules. What is the difference between these two?
推荐答案
subprocess
模块让您可以运行和控制其他程序.任何可以从计算机上的命令行开始的东西,都可以通过这个模块运行和控制.使用它来将外部程序集成到您的 Python 代码中.
The subprocess
module lets you run and control other programs. Anything you can start with the command line on the computer, can be run and controlled with this module. Use this to integrate external programs into your Python code.
multiprocessing
模块允许您将用 python 编写的任务划分到多个进程中,以帮助提高性能.它提供了一个非常类似于 threading
模块的 API;它提供了在它创建的进程之间共享数据的方法,并使管理多个进程以运行 Python 代码的任务(更)容易.换句话说,multiprocessing
让您可以利用多个进程通过并行执行代码来更快地完成任务.
The multiprocessing
module lets you divide tasks written in python over multiple processes to help improve performance. It provides an API very similar to the threading
module; it provides methods to share data across the processes it creates, and makes the task of managing multiple processes to run Python code (much) easier. In other words, multiprocessing
lets you take advantage of multiple processes to get your tasks done faster by executing code in parallel.
这篇关于多进程和子进程有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:多进程和子进程有什么区别?
基础教程推荐
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 筛选NumPy数组 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01