Написать этот материал меня побудило... отсутствие хороших статей по корутинам в C++ в русскоязычном интернете, как бы странно это не звучало. Ну серьезно, C++20 существует уже несколько лет как, но до сих пор почти все статьи про корутины, что встречаются в рунете, относятся к одному из двух типов. Или обзор начинается с самых глубин и мелочей, пересказывая cppreference, а потом автор выдыхается и все сводится к «ну а дальше все понятно, возьмите и примените это в своем коде», что напоминает известную картинку с совой:
Рубрика «асинхронность»
Корутины C++ для чайников: пишем асинхронный веб-клиент
2024-03-08 в 20:35, admin, рубрики: c++, curl, асинхронное программирование, асинхронность, корутиныНужен ли ConfigureAwait?
2023-03-07 в 19:01, admin, рубрики: .net, C#, configureawait checker, асинхронность
Мне никогда не нравилась многословность кода. Длинные и подробные названия упрощают работу с бизнес-логикой, но технические детали кода хочется держать краткими, чтобы они отвлекали на себя минимум внимания.
Одна из многословных конструкций .NET связана с деталями реализации асинхронности и обросла кучей мифов. Про неё спрашивают на собеседованиях, код-ревью, делают обязательной, добавляя в правила линтера. Это .ConfigureAwait(false)
, сопровождающий каждый await
в коде.
В этой статье я расскажу, зачем нужен ConfigureAwait(false)
и как обойтись без него.
Асинхронный python без головной боли
2022-05-24 в 19:59, admin, рубрики: async, asyncio, await, python, асинхронное программирование, асинхронность, асинхронные задачи, асинхронные функции, асинхронный код1. Почему так сложно понять asyncio
Асинхронное программирование традиционно относят к темам для "продвинутых". Действительно, у новичков часто возникают сложности с практическим освоением асинхронности. В случае python на то есть весьма веские причины:
-
Асинхронность в python была стандартизирована сравнительно недавно. Библиотека
asyncio
появилась впервые в версии 3.5 (то есть в 2015 году), хотя возможность костыльно писать асинхронные приложения и даже фреймворки, конечно, была и раньше. Соответственно у Лутца она не описана, а, как всем известно, "про что Лутц не написал, того и знать не надо".
Пишем асинхронного Телеграм-бота
2022-03-15 в 11:11, admin, рубрики: asyncio, python, telegram, telegrambot, асинхронное программирование, асинхронность, Блог компании KTSПривет! Меня зовут Александр, я руководитель бэкенд-разработки в KTS.
Сегодня я покажу, как написать своего Телеграм-бота на основе asyncio и aiohttp. Мы не будем использовать ни aiogram, ни любые другие библиотеки, а напишем бота с нуля, чтобы немного познакомиться с асинхронным программированием, корутинами и некоторыми примитивами синхронизации.
Корутины в C++20 — что это и как с ними работать
2021-10-25 в 14:06, admin, рубрики: c++, C++20, wunder fund, wunderfund, асинхронное программирование, асинхронность, Блог компании Wunder Fund, корутины, Программирование, разработка, С++Прим. Wunder Fund: В статьи описаны базовые подходы к работе с корутинами в 20м стандарте С++, на паре практических примеров разбораны шаблоны классов для промисов и фьючеров. По нашему скромному мнению, можно было бы реализовать и поизящнее. Приходите к нам работать, если имеете сильные мнения о корутинах хе-хе.
Асинхронность в C# и F#. Подводные камни асинхронности в C #
2020-07-18 в 11:48, admin, рубрики: C#, F#, асинхронность, перевод, ПрограммированиеПривет! Представляю вашему вниманию перевод статьи «Async in C# and F# Asynchronous gotchas in C#» автора Tomas Petricek.
Еще в феврале я присутствовал на ежегодном саммите MVP — мероприятии, организованном Microsoft для MVP. Я воспользовался этой возможностью, чтобы посетить также Бостон и Нью-Йорк, сделать два выступления про F# и записать лекцию Channel 9 о провайдерах типов. Несмотря на другие мероприятия (такие как посещения пабов, общение с другими людьми про F# и долгий сон по утрам), мне также удалось провести несколько обсуждений.
Читать полностью »
Асинхронное программирование с async-await
2020-03-05 в 4:55, admin, рубрики: async, async/await, javascript, асинхронность, Программирование, разработка, Разработка веб-сайтовДоброго времени суток, друзья!
Сравнительно новыми дополнениями JavaScript являются асинхронные функции и ключевое слово await. Эти возможности в основном являются синтаксическим сахаром над обещаниями (промисами), облегчая написание и чтение асинхронного кода. Они делают асинхронный код похожим на синхронный. Данная статья поможет вам разобраться, что к чему.
Условия: базовая компьютерная грамотность, знание основ JS, понимание азов асинхронного кода и обещаний.
Цель: понять, как устроены обещания, и как они используются.
Читать полностью »
Элегантное асинхронное программирование с помощью «промисов»
2020-02-17 в 15:39, admin, рубрики: async, asynchronous, javascript, promise, асинхронность, обещания, Программирование, промисы, разработка, Разработка веб-сайтовДоброго времени суток, друзья!
Представляю вашему вниманию перевод статьи «Graceful asynchronous programming with Promises» с MDN.
«Обещания» (промисы, promises) — сравнительно новая особенность JavaScript, которая позволяет откладывать выполнение действия до завершения выполнения предыдущего действия или реагировать на неудачное выполнение действия. Это способствует правильному определению последовательности выполнения асинхронных операций. В данной статье рассматривается, как работают обещания, как они используются в Web API, и как можно написать собственное обещание.
Условия: базовая компьютерная грамотность, знание основ JS.
Задача: понять, что такое обещания и как они используются.
Читать полностью »
Aсинхронный PHP
2020-02-11 в 7:25, admin, рубрики: amphp, event loop, php, php-fpm, phprussia, promise, ReactPHP, асинхронность, Блог компании Конференции Олега Бунина (Онтико), высокая производительность, Программирование, Разработка веб-сайтовДесять лет назад у нас был классический LAMP-стек: Linux, Apache, MySQL, и PHP, который работал в медленном режиме mod_php. Мир менялся, а с ним и важность скорости. Появился PHP-FPM, который позволил значительно увеличить производительность решений на PHP, а не срочно переписывать на чем-то побыстрее.
Параллельно велась разработка библиотеки ReactPHP с применением концепции Event Loop для обработки сигналов от ОС и представления результатов для асинхронных операций. Развитие идеи ReactPHP — AMPHP. Эта библиотека использует тот же Event Loop, но поддерживает корутины, в отличие от ReactPHP. Они позволяют писать асинхронный код, который выглядит как синхронный. Возможно, это самый актуальный фреймворк для разработки асинхронных приложений на PHP.
Но скорости требуется всё больше и больше, инструментов уже не хватает, поэтому идея асинхронного программирования в PHP — одна из возможностей ускорить обработку запросов и лучше утилизировать ресурсы.
Об этом и поговорит Антон Шабовта (zloyusr) — разработчик в компании Onliner. Опыт больше 10 лет: начинал с десктопных приложений на С/С++, а потом перешел в веб-разработку на PHP. «Домашние» проекты пишет на C# и Python 3, а в PHP экспериментирует с DDD, CQRS, Event Sourcing, Async Multitasking.
Читать полностью »