Sim*_*eth 10 python background function
我有两个功能,draw_ascii_spinner
和findCluster(companyid)
.
我想要:
findCluster(companyid)
在后台运行并在处理.... draw_ascii_spinner
直到findCluster(companyid)
完成我该如何开始尝试解决这个问题(Python 2.7)?
Sve*_*ach 11
使用线程:
import threading, time
def wrapper(func, args, res):
res.append(func(*args))
res = []
t = threading.Thread(target=wrapper, args=(findcluster, (companyid,), res))
t.start()
while t.is_alive():
# print next iteration of ASCII spinner
t.join(0.2)
print res[0]
Run Code Online (Sandbox Code Playgroud)
您可以使用多处理.或者,如果findCluster(companyid)
有明智的停止点,你可以把它变成一个发电机draw_ascii_spinner
,做这样的事情:
for tick in findCluster(companyid):
ascii_spinner.next()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9585 次 |
最近记录: |