Python3多处理导致笔记本电脑崩溃

时间:2020-07-27 05:55:55

标签: python python-3.x multiprocessing

我编写了以下代码,以对服务器机群执行健康检查并返回无法访问的节点列表。

该程序每次执行都花费较长时间,并最终冻结(约6次),然后笔记本电脑重新启动。

笔记本电脑崩溃前执行未完成,也没有以^ c结尾。

笔记本电脑规格:MacBook Pro,32Gb RAM,16核。

import multiprocessing as mp
import subprocess

def health(hostnames):
   with get_context("spawn").Pool(processes=mp.cpu_count()) as pool:
       result = pool.map(ping, hostnames)
   return [host for host in result if host[1] is False]

def ping(host):
   command = ['ping', '-c', '1', host]
   res = subprocess.Popen(command, stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT)
   res.wait(2)
   return host, res.returncode == 0

health(hostnames = [ ~250 servers ])

编程新手,是什么原因导致重新启动?

0 个答案:

没有答案