我试图弄清楚为什么多处理不起作用。我一直在挣扎几天知道..有人可以看看,看看我做错了什么。Python多处理池不能正常工作
我没有得到脚本的任何错误。它只是完成,就像它永远不会运行我在池中定义的函数。我甚至把一个假的函数名称,看看它是否尝试运行它的错误,甚至没有达到这一点。有什么想法吗??
该脚本适用于不使用多处理时,只是试图更快地创建脚本。我正在检查响应代码的7300个链接。先谢谢了。
def check_links(linklist):
returnList = []
for links in linklist:
r = requests.get(links)
rc = r.status_code
strRc = str(rc)
result = links+' '+strRc
returnList.append(result)
yield returnList
def main():
pool = multiprocessing.Pool(4)
results = pool.map(check_links, MasterListNoDupes)
pool.close()
pool.join()
for result in results:
print(result)
if __name__ == ' __main__':
main()
你为什么'yield'如果你有可能会'return'ed?无论如何,你正在构建整个列表。另外,你会得到什么输出? – ForceBru
'if __name__ =='__main __':','__main__'中有一个额外的空间。清除它 – Arun
我放回去了。我试图将其作为故障排除步骤... –