Back to questions
Фабрика Решения
Junior — Middle
72
Объясните концепцию параллельных процессов или потоков выполнения в программировании.
Companies where asked
Soft Media Group
Answer from AI
sobes.tech AI
Параллельные процессы и потоки выполнения позволяют программе выполнять несколько задач одновременно, что повышает эффективность и скорость работы.
- Процессы — это независимые экземпляры программы с собственной памятью. Они изолированы друг от друга.
- Потоки (threads) — это легковесные единицы выполнения внутри процесса, которые разделяют память и ресурсы процесса.
В Python для параллелизма можно использовать:
- Модуль
threadingдля потоков — подходит для задач с большим количеством ввода-вывода. - Модуль
multiprocessingдля процессов — позволяет обойти ограничение GIL и эффективно использовать несколько ядер CPU.
Пример с потоками:
import threading
def worker(num):
print(f'Поток {num} выполняется')
threads = []
for i in range(5):
t = threading.Thread(target=worker, args=(i,))
threads.append(t)
t.start()
for t in threads:
t.join()
Этот код запускает 5 потоков, которые выполняются параллельно.