Три способа выполнить множество задач с 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
Программирование на React мы все любим. Так вот у них там бывают баги со состояниями. Тут контора задротов (где казалось бы всё должно быть идеально даже в бете ) отличилась Яндекс Музыка на эту же тему . Создал я вчера плейлист , добавил туда песни. Сегодня слушаю и понимаю что у меня просто бесит это песня на китайском в конце плейлиста - удалил и поставил на повтор листа. И что вы думаете Яндекс музыка врубила мне это удаленную песню.
#Bugs
At first most will be oblivious. When learning of its inclusion as an additive, most won't care as they didn't taste it. This in turn will make them more susceptible to consuming larger pieces and eventually whole #bugs. Then similar strategies will be used for worms etc until the masses are consuming whatever the #globalists dictate.
It's also logical that on such a scale the bugs are synthetic and containing nano-technology. The climate excuse is ridiculous! Do people not realise what would result with the absence of real bugs from the ecological environment? Has nobody seen Arachnophobia?!
https://summit.news/2023/01/25/crushed-bug-additive-is-now-included-in-pizza-pasta-cereals-across-the-eu/
Ethereum Testnet Faces Pectra Hardfork Issues
Ethereum's Sepolia testnet encountered a failure post Pectra hardfork activation, halting transaction processing. Developers resolved a bug in the deposit contract within six hours. Prior to this, issues with slot finalization arose in the Holesky testnet. The mainnet launch for Pectra is still set for early April without reported delays, accompanied by a $2M bounty campaign until March 24.
#Ethereum#Sepolia#Pectra#blockchain#crypto#technology#devops#networking#bugs#fintech#bountycampaign#mainnet#Holessky#cryptonews#update#softwaredev#smartcontracts#DeFi#testing