Курс Python → Асинхронное программирование с asyncio

Асинхронное программирование — это подход, который позволяет выполнять несколько задач одновременно, не блокируя основной поток выполнения. В Python для реализации асинхронности используется модуль asyncio, который позволяет создавать асинхронные функции и использовать ключевые слова async/await.

Для создания асинхронной функции необходимо использовать ключевое слово async перед определением функции. Внутри асинхронной функции можно использовать ключевое слово await для ожидания выполнения другой асинхронной операции. Это позволяет эффективно использовать ресурсы процессора и не блокировать выполнение других задач.


import asyncio

async def my_task():
    await asyncio.sleep(1)
    print("Task completed")

async def main():
    task1 = asyncio.create_task(my_task())
    task2 = asyncio.create_task(my_task())

    await task1
    await task2

asyncio.run(main())

В данном примере создается две асинхронные задачи my_task(), которые выполняются параллельно. Функция main() запускает эти задачи с помощью asyncio.create_task() и ожидает их завершения с помощью ключевого слова await. Таким образом, задачи выполняются одновременно.

Важно помнить, что асинхронное программирование не всегда делает код быстрее, но может повысить его эффективность за счет параллельного выполнения задач. При этом необходимо правильно управлять асинхронными функциями и избегать блокировок, чтобы избежать проблем с синхронизацией данных.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Курс по дообучению ChatGPT
  2. Распаковка значений в Python
  3. Python: отличительная особенность — отступы
  4. Установка пакета в Python
  5. Форматирование чисел в Python
  6. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  7. Работа с defaultdictами в Python
  8. Импорт модуля из другого каталога
  9. Python 3.12: переиспользование кавычек
  10. Работа с словарями в Python
  11. Генераторы списков в Python
  12. Виртуальные среды в Python
  13. Сортировка с помощью параметра key
  14. Явный импорт переменных
  15. Python: возвращение нескольких значений
  16. Метод enumerate() в Python
  17. Проверка условий: all и any
  18. Ускоренный импорт библиотек
  19. Возвращение нескольких значений
  20. Перевернуть список в Python
  21. Хранение данных с помощью dataclasses
  22. Анонимные функции в Python
  23. Применение функций в Python
  24. Numpy: использование Ellipsis
  25. Декоратор Ajax required
  26. Бесконечные списки в Python
  27. Фильтрация списков с itertools
  28. Работа с комплексными числами
  29. Генерация случайных чисел в Python
  30. Проверка строки на палиндром
  31. Транспонирование матрицы
  32. Вычисление логарифмов в Python
  33. Работа с переменными в Python
  34. Явный импорт в Python
  35. Работа с аргументами командной строки в Python
  36. Работа с кортежами в Python
  37. Безопасные SQL-запросы в Python 3.11
  38. Генерация строк с .join()
  39. Форматирование данных с помощью pprint
  40. Списки в Python
  41. Оболочка Python
  42. Оператор Walrus в Python 3.8
  43. Структура данных словарь в Python
  44. Поиск частого элемента
  45. Разделение списка на гнппы
  46. Метод clear для коллекций
  47. Big O оптимизация

Marketello читают маркетологи из крутых компаний