Python的multiprocessing模块 案例
时间: 2023-11-05 20:39:26 浏览: 91
当然,我可以为您提供另一个使用Python的multiprocessing模块的案例。下面是一个示例代码,用于并行下载多个网页的内容:
```python
import multiprocessing
import requests
def download_page(url):
response = requests.get(url)
return response.content
if __name__ == '__main__':
# 创建一个包含多个网页链接的列表
urls = [
'https://www.example.com',
'https://www.google.com',
'https://www.github.com',
'https://www.python.org'
]
# 创建一个进程池,最多同时运行4个进程
pool = multiprocessing.Pool(processes=4)
# 使用进程池的map方法并行下载每个网页的内容
results = pool.map(download_page, urls)
# 关闭进程池
pool.close()
pool.join()
# 打印结果
for result in results:
print(len(result))
```
在这个案例中,我们首先定义了一个`download_page`函数,它用于下载给定网页链接的内容。然后,我们创建了一个包含多个网页链接的列表`urls`。接下来,我们使用`multiprocessing.Pool`创建了一个进程池,指定最多同时运行4个进程。然后,我们使用进程池的`map`方法将`download_page`函数应用到每个网页链接上,实现并行下载。最后,我们关闭进程池,并打印每个网页内容的长度。
同样需要注意,在使用`multiprocessing.Pool`时,我们需要将代码放在`if __name__ == '__main__':`条件下。
希望这个案例能帮助到您!如有其他问题,请随时提问。
阅读全文