TGViewer
Реальный Python Реальный Python @python_real · 3.64K subscribers
Post #929 1.09K
Параллелизм, конкурентность и AsyncIO в Python — на примерах

Эта статья рассматривает, как ускорить операции, ограниченные процессором (CPU-bound) и вводом-выводом (IO-bound), с помощью многопроцессорности, многопоточности и AsyncIO.


# tasks.py

import os
from multiprocessing import current_process
from threading import current_thread

import requests


def make_request(num):
# io-bound

pid = os.getpid()
thread_name = current_thread().name
process_name = current_process().name
print(f"{pid} - {process_name} - {thread_name}")

requests.get("https://httpbin.org/ip")


async def make_request_async(num, client):
# io-bound

pid = os.getpid()
thread_name = current_thread().name
process_name = current_process().name
print(f"{pid} - {process_name} - {thread_name}")

await client.get("https://httpbin.org/ip")


def get_prime_numbers(num):
# cpu-bound

pid = os.getpid()
thread_name = current_thread().name
process_name = current_process().name
print(f"{pid} - {process_name} - {thread_name}")

numbers = []

prime = [True for i in range(num + 1)]
p = 2

while p * p <= num:
if prime[p]:
for i in range(p * 2, num + 1, p):
prime[i] = False
p += 1

prime[0] = False
prime[1] = False

for p in range(num + 1):
if prime[p]:
numbers.append(p)

return numbers


https://testdriven.io/blog/python-concurrency-parallelism/

#python

👉 @python_real
  • 👍 3
More from @python_real
  1. Sep 22, 2026🔴 Тестовый собес на Middle Python с разработчиком из Яндекса завтра вечером! [+ разбор 50…
  2. Sep 22, 2026📊 Статистика в Python: с чего начать анализ данных Среднее значение может скрыть важную д…
  3. Sep 21, 2026🐍 В Python 3.15 появится frozendict - словарь, который нельзя изменить Это встроенный тип…
  4. Sep 1, 2026🔍Тестовое собеседование на Middle Python с разработчиком из Авито завтра вечером Уже завт…
  5. Sep 1, 2026🐍 Асинхронное программирование в Python: от генераторов до asyncio Почему обычная програм…
  6. Aug 24, 2026🐍 Как использовать Claude Code для разработки и отладки проектов на Python Real Python оп…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →