Отдельно разберём TaskGroup, который пришел на замену gather в Python 3.11.
Ключевые отличия
▫️create_task() возвращает объект asyncio.Task, у которого есть соответствюущие методы управления. То есть у нас больше контроля
▫️это контекстный менеджер, который гарантирует что все таски будут остановлены по выходу из контекста
▫️ошибка автоматически отменяет незавершенные задачи,
▫️except* передает нам ExceptionGroup, в котором каждую ошибку можно обработать отдельно
import asyncio
import random
async def do_it() -> str:
if random.random() < 0.1:
raise ValueError('Oops')
delay = random.uniform(0.5, 1.5)
await asyncio.sleep(delay)
return delay
async def main():
try:
async with asyncio.TaskGroup() as tg:
for _ in range(10):
tasks.append(tg.create_task(do_it()))
for t in tasks:
print(t.result())
except *ValueError as e:
for err in e.exceptions:
print(err)
asyncio.run(main())
Рекомендую изучить страницу Coroutines and Tasks из документации, где представлено больше интересных примеров и механизмов
- таймауты
- отмена задач
- создание задач из другого потока
#async
▶️ Les États-Unis développent une nouvelle arme nucléaire pour détruire les #bunkers
🟢Selon The War Zone, le département américain de l'#Énergie a demandé près de 100 millions de dollars pour lancer le développement d'un nouveau système nucléaire appelé NDS-A. Ce projet vise à créer une bombe antibunker moderne destinée à remplacer la B61-11, qui est en fin de vie.
🟢Cette nouvelle arme est destinée à détruire des cibles d'importance cruciale, dissimulées profondément sous terre qu'il est impossible d'éliminer avec des moyens conventionnels.
RT en français • Osez questionner !
▶️ Les États-Unis développent une nouvelle arme nucléaire pour détruire les #bunkers
🟢Selon The War Zone, le département américain de l'#Énergie a demandé près de 100 millions de dollars pour lancer le développement d'un nouveau système nucléaire appelé NDS-A. Ce projet vise à créer une bombe antibunker moderne destinée à remplacer la B61-11, qui est en fin de vie.
🟢Cette nouvelle arme est destinée à détruire des cibles d'importance cruciale, dissimulées profondément sous terre qu'il est impossible d'éliminer avec des moyens conventionnels.
RT en français • Osez questionner !
🚢Дальние рейсы танкеров-продуктовозов в Азию остаются ограниченными несмотря на рост цен на топливо.
По данным BRS Shipbrokers, несмотря на напряжённость на рынке бункера и перераспределение потоков нефти, дальние перевозки чистых нефтепродуктов (clean products) в Азию остаются редкими.
Хотя сырьё всё чаще направляется из Атлантики в Азию, аналогичного роста по продуктам не наблюдается из-за сложной экономики рейсов и повышенных рисков.
С операционной точки зрения, высокие издержки и неопределённость ограничивают арбитражные поставки, сдерживая спрос на дальние перевозки в сегменте продуктовых танкеров.
Для рынка это означает дисбаланс между сырьевыми и продуктовым потоками, где рост цен на топливо не всегда трансформируется в увеличение перевозок.
📌BRS Shipbrokers Ltd. — основана в 1865 г, международная брокерская компания, специализируется на анализе рынков и чартерных операциях; находится в частной собственности.
#Tankers#Shipping#Freight#Oil#Bunkers