Три способа выполнить множество задач с 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
🚢AKOFS Offshore получила 4-летний контракт с Petrobras на $330 млн.
Норвежский офшорный оператор AKOFS Offshore (дочерняя компания Akastor) подписал твёрдый четырёхлетний чартерный контракт с Petrobras для судна "Aker Wayfarer".
Судно 2010 года постройки (DWT 11 406) продолжит работу в Бразилии как судно вспомогательных подводных работ. Оснащение включает 400-тонный кран AHC и вспомогательный 50-тонный кран. Начало нового контракта запланировано на сентябрь 2027 года.
Общая стоимость соглашения — $330 млн, из которых около $213 млн придётся непосредственно на выручку AKOFS Offshore и будет отражено в портфеле заказов. После подписания общий портфель заказов достиг $752 млн.
Операции будут осуществляться совместно с Bravante (морские услуги) и Oceaneering (ROV-сервисы), что отражает интегрированную модель обслуживания глубоководных проектов Petrobras.
📌AKOFS Offshore основана в 2010 году и специализируется на услугах IMR и subsea support. Контролируется норвежской инвестиционной группой Akastor ASA, листинг на Oslo Børs.
#offshore#subsea#Petrobras#NorwayShipping#energyservices
🚢SeaBird Exploration продлевает контракт “Fulmar Explorer” в Западном полушарии.
Кипрская SeaBird Exploration, дочерняя структура SED Energy Holdings, получила продление контракта на три месяца для своего судна-источника “Fulmar Explorer” (2009 г. постройки).
Судно продолжит выполнять работы по технологии ocean bottom node (OBN) в Западном полушарии как минимум до середины июня. По заявлению компании, коммерческие условия продления соответствуют первоначальному соглашению. Ранее контракт уже продлевался на три месяца — до середины марта, что подтверждает стабильную загрузку флота в сегменте морской сейсморазведки.
В начале месяца компания также объявила о продлении контракта для “Eagle Explorer” в том же регионе до середины мая.
Последовательные пролонгации свидетельствуют о сохраняющемся спросе на OBN-услуги на фоне активизации офшорных геологоразведочных программ.
📌SeaBird Exploration — международная сейсморазведочная компания, основанная в 2006 году, специализируется на морских геофизических исследованиях. Полностью принадлежит SED Energy Holdings, частной инвестиционной группе, ориентированной на энергетический сектор.
#SeaBirdExploration#Offshore#OBN#SeismicSurvey#EnergyServices