как прервать работу потоков в concurrent.futures?

 
0
 
Python
ava
kvadroziphal | 20.01.2011, 16:24
здравствуйте

использую python3, pyqt4, concurrent.futures
запускать потоки научился, но не могу понять как их теперь остановить

запускаю так:


self.executor = ThreadPoolExecutor(max_workers=self.threads)
self.pending = set()

for proxy in proxies:
future = self.executor.submit(self.worker, proxy)
future.add_done_callback(self.process_result)
self.log('проверяем ' + proxy)
self.pending.add(future)
self.app.processEvents()


делал в классе флаг - self.stopCheck, который становился True при нажатии кнопки в UI
затем вставлял проверку на этот флаг в self.worker, self.process_result, в слот, который вызывается из self.process_result для обновления UI
пробовал обнулять self.pending

ничего не помогает, всё работает как работало
подскажите, что нужно сделать, чтобы корректно убить все созданные потоки и не плодить новых?
Kommentare (0)

Kommentare werden nicht hinzugefügt

Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
advanced
Absenden