Back to questions
Junior — Middle
63
В каких случаях применяется многопоточность в програmmировании?
Companies where asked
Рексофт
Answer from AI
sobes.tech AI
Многопоточность применяется, когда нужно выполнять несколько задач одновременно, чтобы повысить производительность или отзывчивость программы. В Python это полезно для:
- Выполнения операций ввода-вывода (например, сетевые запросы, работа с файлами), где потоки могут ожидать завершения операций без блокировки всей программы.
- Параллельной обработки задач, не требующих интенсивных вычислений (из-за GIL в CPython).
- Улучшения отзывчивости пользовательских интерфейсов, чтобы тяжелые операции не блокировали главный поток.
Пример использования многопоточности для параллельного скачивания нескольких файлов:
import threading
import requests
def download(url):
resp = requests.get(url)
print(f"Загружено {len(resp.content)} байт с {url}")
urls = ["https://example.com/file1", "https://example.com/file2"]
threads = []
for url in urls:
t = threading.Thread(target=download, args=(url,))
t.start()
threads.append(t)
for t in threads:
t.join()