Функция 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
Hurmatli professionallar! 👷🏽♂️
Bizni butlovchi qismlarham qalbakilashtirishni boshlashdi!
Aynan osmalar nazarda tutilmoqda.
Nosirjon qalbaki mahsulotni qanday farqlashni va nima uchun uni sotib olmaslikni batafsil tushuntirgan video bilan tanishing.
Ogoh boʻling, KNAUF osmalari xavfsizligingiz kafolatidir.
Keng tarqalgan yanglish fikrga koʻra, osmaning qalinligi uning sifatini belgilaydi.
Yoʻq.
Taʼsiri bor, lekin bu asosiy omil emas.
Qalinlikdan tashqari KNAUF mutaxassislari ishlab chiqarishda hisobga oladigan metall va rux sifatini, osma shaklini va boshqa omillarni inobatga olish zarur.
https://telegra.ph/KNAUF-TOGRI-OSMA-10-13
Aldanib qolmang!
Sifatli materiallar ishlating!
KNAUF ishlating!
————————————————————
Уважаемые профессионалы!👷🏽♂️
Нас начали подделывать и в комплектующих материалах!
А именно - подвесы.
Ознакомьтесь с видео, где Носиржон подробно рассказывает, как отличить подделку и почему не стоит ее покупать.
Будьте бдительны, подвесы КНАУФ гарантия вашей безопасности.
Есть распространенное заблуждение, что толщина подвеса определяет его качество.
Нет.
Влияет, но не является главным.
Кроме толщины необходимо учитывать качество металла и цинка, форму подвеса и другие факторы, которые специалисты КНАУФ учитывают при производстве.
https://telegra.ph/PRYAMOJ-PODVES-KNAUF-10-13
Не дайте себя обмануть!
Используйте качественные материалы!
Используйте КНАУФ!
#KnaufUzbekistan#подвес#osma
Quvurlar, simlar, ventilyatsiya kabi aloqa vositalari berkitish yoki gipskartondan shiftni kerakli balandlikka oʻrnatish uchun yechim qidirayotgan boʻlsangiz, unda nonius osma – sizga aynan keraklisi.
Bunga sabab u:
● Universal: har qanday vazifa uchun mos, uzunligi rostlanadi;
● Mustahkam: har bir elementi 40 kggacha yuklamaga chidaydi;
● Oddiy: maxsus koʻnikmalarsiz oson oʻrnatiladi.
Nonius osmadan foydalanasizmi?
Izohlarda tajribangiz haqida yozing.
Sifatli materiallardan foydalaning.
KNAUFʼdan foydalaning
P.S. Storizlarimizda nonius osmani oʻrnatish boʻyicha koʻrsatmalarini tomosha qilishni unutmang!
P.P.S. Nonius osma sizga tanishmi? Izohlarda taassurotlaringizni ulashing!
Batafsil
- - - - -
Если вы ищете решение для сокрытия коммуникаций: труб, проводки, вентиляции или монтажа потолка из гипсокартона на нужную высоту, то нониус-подвес — это то, что вам надо.
Потому что он:
● Универсальный: подходит для любых задач, регулируется по длине;
● Прочный: выдерживает до 40 кг на каждый элемент;
● Простой: легко монтируется без специальных навыков.
●
А вы уже используете нониус-подвес?
Поделитесь в комментариях своим опытом.
Используйте качественные материалы!
Используйте КНАУФ!
Подробнее
#knaufuzbekistan#knauf
#Нониус#подвес#потолок#гипсокартон#коммуникации#ремонт#стройка#универсальность#надежность#простота
#gipskarton#Nonius#osma#shift#gipskarton#aloqavositalari#taʼmir#qurilish#universallik#ishonchlilik#oddiylik
Quvurlar, simlar, ventilyatsiya kabi aloqa vositalari berkitish yoki gipskartondan shiftni kerakli balandlikka oʻrnatish uchun yechim qidirayotgan boʻlsangiz, unda nonius osma – sizga aynan keraklisi.
Bunga sabab u:
Batafsil: https://knauf.uz/qr/R3RzaRg8
- - - - -
Если вы ищете решение для сокрытия коммуникаций: труб, проводки, вентиляции или монтажа потолка из гипсокартона на нужную высоту, то нониус-подвес — это то, что вам надо.
Подробнее: https://knauf.uz/qr/R3RzaRg8
YouTube
Instagram
Telegram
#knaufuzbekistan#knauf
#Нониус#подвес#потолок#гипсокартон#коммуникации#ремонт#стройка#универсальность#надежность#простота
#gipskarton#Nonius#osma#shift#gipskarton#aloqavositalari#taʼmir#qurilish#universallik#ishonchlilik#oddiylik
Quvurlar, simlar, ventilyatsiya kabi aloqa vositalari berkitish yoki gipskartondan shiftni kerakli balandlikka oʻrnatish uchun yechim qidirayotgan boʻlsangiz, unda nonius osma – sizga aynan keraklisi.
Bunga sabab u:
Batafsil: https://knauf.uz/qr/R3RzaRg8
- - - - -
Если вы ищете решение для сокрытия коммуникаций: труб, проводки, вентиляции или монтажа потолка из гипсокартона на нужную высоту, то нониус-подвес — это то, что вам надо.
Подробнее: https://knauf.uz/qr/R3RzaRg8
YouTube
Instagram
Telegram
#knaufuzbekistan#knauf
#Нониус#подвес#потолок#гипсокартон#коммуникации#ремонт#стройка#универсальность#надежность#простота
#gipskarton#Nonius#osma#shift#gipskarton#aloqavositalari#taʼmir#qurilish#universallik#ishonchlilik#oddiylik