TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

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

Резултати

Пронајдени 1 слични објави

Пребарај: #85yearsago

当前筛选 #85yearsago清除筛选

📆 85 лет назад: речь Черчилля, изменившая историю ✍️ 13 мая 1940 года, когда большая часть Европы уже была оккупирована Германией, британский премьер-министр Уинстон Черчилль произнес в парламенте свою знаменитую речь, которая сегодня известна как «кровь, пот и слезы». «Мне нечего вам предложить, кроме крови, тяжкого труда, слёз и пота» — эти слова стали не просто фразой, но символом решимости противостоять тирании. Черчилль был одним из первых западных лидеров, кто оценил масштаб советских жертв во Второй мировой войне. К 1942 году он настаивал на открытии второго фронта, а позже говорил: «Именно русская армия выпустила кишки из германской военной машины». Интересно, что Черчилль использовал фразу о «крови и поте» задолго до 1940 года и, вероятно, позаимствовал ее у Джузеппе Гарибальди, итальянского революционера, чьи слова о «крови и слезах» вдохновляли борцов за свободу по всей Европе. В своей речи Черчилль говорил о «великой битве за выживание» — но не только Великобритании. Это была битва за сохранение свободы в Европе. Менее чем через год эта битва пришла и на территорию СССР. Сегодня, когда Европа сталкивается с захватнической войной России в Украине, слова Черчилля о том, что нельзя сдаваться в борьбе за свободу, звучат не менее актуально. Как сказал сам Черчилль: «Успех — это умение двигаться от неудачи к неудаче, не теряя энтузиазма». 🔗 Читайте полную речь Черчилля: https://diletant.media/articles/38389750/ #VEDay80#VEDay#OTD#85YearsAgo