def close(self):
from threading import Lock
lock = Lock()
count = [0]
future = Future()
def on_close(_):
with lock:
count[0] += 1
if count[0] == len(self.reporters):
future.set_result(True)
for reporter in self.reporters:
f = reporter.close()
f.add_done_callback(on_close)
return future
评论列表
文章目录