@duellinksbrasil · Post #268 · 15.08.2018 г., 20:51
#RESUMO: 15/8/2018 | @duellinksbrasil
Hashtags
TGINSIGHT SIMILAR POSTS
Изворен канал @pythonotes · Post #401 · 15 дек.
Функция asyncio.wait() это еще один способ вызвать множество асинхронных задач. Она работает в нескольких режимах. 1. Самый простой - ждем завершения всех задач async def main(): tasks = [asyncio.create_task(do_it(i)) for i in range(10)] done, pending = await asyncio.wait( tasks, return_when=asyncio.ALL_COMPLETED ) for task in done: try: print(task.result()) except Exception as e: print(e) Очень похоже на gather, но работает не так. ▫️возвращает не результаты, а два сета с объектами Task у которых можно забрать результат через task.result() если они в списке done ▫️не гарантирует порядок результатов так как оба объекта это set ▫️не выбрасывает исключение когда оно появляется, а сохраняет его в Task. Исключение появится когда попробуете забрать резултьтат. 2. Ждем завершения первой задачи, даже если там ошибка. async def main(): tasks = [asyncio.create_task(do_it(i)) for i in range(3)] done, pending = await asyncio.wait( tasks, return_when=asyncio.FIRST_COMPLETED ) # в done может быть несколько задач! for task in done: try: print(task.result()) except Exception as e: print(f"Fail: {e}") # Оставшиеся задачи в pending, как правило, нужно отменить, иначе они будут продолжать работать for task in pending: task.cancel() В сете done будут таски которые успели завершится, причем как успешно так и нет. 3. До первой ошибки. Тоже самое, но с аргументом FIRST_EXCEPTION done, pending = await asyncio.wait( tasks, return_when=asyncio.FIRST_EXCEPTION ) Функция завершается как только первая задача упадет с ошибкой. Учтите, что в любом случае done вы можете обранужить несколько задач, как с ошибками так и успешные. ↗️ Полный листинг примеров здесь #async
Hashtags
Пребарај: #resumo
@duellinksbrasil · Post #268 · 15.08.2018 г., 20:51
#RESUMO: 15/8/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #254 · 13.08.2018 г., 05:34
#RESUMO: 13/8/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #250 · 10.08.2018 г., 18:39
#RESUMO: 10/8/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #205 · 03.08.2018 г., 16:50
#RESUMO: 3/8/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #199 · 01.08.2018 г., 02:43
#RESUMO: 3/8/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #188 · 26.07.2018 г., 01:09
#RESUMO: 25/7/2018 - Agosto e Setembro em Yu-Gi-Oh! Duel Links. | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #140 · 20.07.2018 г., 11:21
#RESUMO: 23/7/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #98 · 18.07.2018 г., 03:14
#RESUMO: 18/7/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #67 · 12.07.2018 г., 20:11
#RESUMO: 13/7/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #64 · 11.07.2018 г., 22:46
#RESUMO: 11/7/2018 | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #62 · 11.07.2018 г., 00:00
#RESUMO: O mês de julho está repelto de eventos e atualizações confirmadas, trazendo novas cartas do Syrus e da Tea, também o lendário Zane Truesdale desbloqueável. | @duellinksbrasil
Hashtags
@duellinksbrasil · Post #34 · 10.07.2018 г., 21:00
#RESUMO: 10/7/2018 | @duellinksbrasil
Hashtags