Python 如何重复调用函数?

Python 如何重复调用函数?,python,multithreading,multiprocessing,python-multiprocessing,python-multithreading,Python,Multithreading,Multiprocessing,Python Multiprocessing,Python Multithreading,通过模块multiproprocessing.dummy,我想执行函数getData()10次。但是,print函数只调用一次 from multiprocessing.dummy import Pool as ThreadPool print("Begin") import itertools import urllib.request import time def getData(): print("Do something...&quo

通过模块
multiproprocessing.dummy
,我想执行函数
getData()
10次。但是,
print
函数只调用一次

from multiprocessing.dummy import Pool as ThreadPool

print("Begin")

import itertools
import urllib.request
import time

def getData():
        print("Do something...")

t0 = time.time()
with ThreadPool(10) as pool:
    results = pool.map_async(getData(), iterable=(x for x in range(10)))
    
t1 = time.time()
totalTime = t1-t0
print ("Total Cyclic time: ", totalTime)   

在将其传递到
map\u async
之前,您将调用
getData()
,后者将传递其结果,而不是传递函数本身

getData()
更改为
getData
,您应该可以了

results=pool.map\u async(getData,…)

在将其传递到
map\u async
之前,您正在调用
getData()
,后者传递其结果,而不是传递函数本身

getData()
更改为
getData
,您应该可以了

results=pool.map\u async(getData,…)

你的意思是:
pool.map\u async(getData,…)
?是的,我是@quamrana。你的意思是:
pool.map\u async(getData,…)
?是的,我是@quamrana。好吧,听起来很合理。还有一件事,我需要填写什么?辩君:“对不起,我只是不想重新输入你问题中的内容。我相信您至少还会遇到一个错误(getData不接受参数,但您要将iterable中的值作为参数传入)。函数pool.map_async需要以下参数:func,iterable。这就是我用这种方式编码的原因。我不知道用什么来填充“iterable”。好吧,这听起来很合理。还有一件事,我需要填写什么?辩君:“对不起,我只是不想重新输入你问题中的内容。我相信您至少还会遇到一个错误(getData不接受参数,但您要将iterable中的值作为参数传入)。函数pool.map_async需要以下参数:func,iterable。这就是我用这种方式编码的原因。我不知道用什么来填充“iterable”。看见