Как запустить одновременно два потока в python?

Пользователь

от edyth , в категории: Python , 7 месяцев назад

Как запустить одновременно два потока в python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от sherwood_littel , 6 месяцев назад

@edyth 

В Python можно запускать одновременно два или более потока, используя различные механизмы многопоточности. Вот несколько примеров:

  1. Использование модуля threading:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import threading

def func1():
    # код для выполнения потоком 1

def func2():
    # код для выполнения потоком 2

thread1 = threading.Thread(target=func1)
thread2 = threading.Thread(target=func2)

thread1.start()
thread2.start()

thread1.join()
thread2.join()


  1. Использование модуля concurrent.futures:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import concurrent.futures

def func1():
    # код для выполнения потоком 1

def func2():
    # код для выполнения потоком 2

with concurrent.futures.ThreadPoolExecutor() as executor:
    executor.submit(func1)
    executor.submit(func2)


  1. Использование модуля multiprocessing:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import multiprocessing

def func1():
    # код для выполнения потоком 1

def func2():
    # код для выполнения потоком 2

process1 = multiprocessing.Process(target=func1)
process2 = multiprocessing.Process(target=func2)

process1.start()
process2.start()

process1.join()
process2.join()


Это лишь несколько из множества доступных способов запуска нескольких потоков в Python. Выбор конкретного подхода зависит от требуемого поведения и особенностей конкретной задачи.