Три способа выполнить множество задач с asyncio
Функция для примера:
async def do_it(n):
await asyncio.sleep(random.uniform(0.5, 1))
return n
1. Последовательный вызов
async def main():
for i in range(100):
result = await do_it(i)
Такой вызов имеет смысл только тогда, когда результат одной задачи требуется для вызова следующей.
Если они независимы, то это антипаттерн, так как аналогичен простому синхронному вызову по очереди.
2. Упорядоченный результат
async def main():
tasks = [do_it(i) for i in range(100)]
results = await asyncio.gather(*tasks)
Выполняет корутины конкурентно и возвращает результат в виде списка.
Полезен когда требуется получить результаты в том же порядке в котором задачи отправлены.
3. Результат по мере готовности
tasks = [asyncio.create_task(do_it(i)) for i in range(100)]
for cor in asyncio.as_completed(tasks):
result = await cor
Так же выполняет корутины конкурентно, но не гарантирует порядок. Результат возвращается по мере готовности, каждый отдельно.
Полезен когда нужно обработать любой ответ как можно скорее.
#async
What is #Mpox❓
How is it transmitted❓
What are the symptoms❓
What are the recommended #InfectionPreventionandControl measures for the general public and healthcare workers❓
🔗Watch https://youtu.be/cCUu4PXwT0A
Viral Haemorrhagic Fevers #VHFs are a group of illnesses caused by viruses that damage blood vessels and can cause severe bleeding.
Our national guideline on #InfectionPreventionandControl for #VHFs is designed as a major reference for anyone involved in the care and management of #VHFs cases.
🔗Download and read via
https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf
Viral Haemorrhagic Fevers #VHFs are a group of illnesses caused by viruses that damage blood vessels and can cause severe bleeding.
Our national guideline on #InfectionPreventionandControl for #VHFs is designed as a major reference for anyone involved in the care and management of #VHFs cases.
🔗Download and read via
https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf
Viral hemorrhagic fevers #VHFs are a group of infectious diseases that affect multiple organ systems in the body and may be accompanied by bleeding.
What are the #InfectionPreventionandControl practices that need to be in place in the management of VHFs?
🔗Download our National Guideline on #IPC for #VHF
https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf
Getting infected while providing care can be prevented.
#Healthcare workers are urged to always practice standard #infectionpreventionandcontrol measures when handling suspected or confirmed cases of #Mpox.
#PreventMpox
Sustained domestic funding for #InfectionPreventionandControl is an essential investment in the fight against healthcare-associated infections and #antimicrobialresistance.
Let's protect lives, support research, and safeguard our healthcare systems.
#TurnNigeriaOrange
#PreventHAIs
#FundIPC
Our National Guideline on #InfectionPreventionandControl for Viral Haemorrhagic Fevers is designed for a well-coordinated, standardised, and effective response to these potential diseases, safeguarding both healthcare workers and the public.
🔗Download and read via
https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf
#EmergencyPreparedness
#EmergencyResponse
#HealthforAll
Common Viral Haemorrhagic Fevers #VHFs include #LassaFever, #EbolaVirusDisease, #YellowFever, #DengueFever, #MarburgFever and #CrimeanCongoHaemorrhagicFever.
What are the #InfectionPreventionandControl practices that need to be in place in the management of VHFs?
🔗Download our National Guideline on #IPC for #VHF
https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf