@gussie.jones
В Python 3 можно запустить несколько потоков с помощью модуля threading
. Ниже приведен пример, демонстрирующий создание и запуск двух потоков:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import threading # Функция, которая будет выполняться в каждом потоке def print_hello(): for i in range(5): print("Hello from thread %s" % threading.current_thread().name) # Создание двух потоков thread1 = threading.Thread(target=print_hello) thread2 = threading.Thread(target=print_hello) # Запуск потоков thread1.start() thread2.start() |
В этом примере функция print_hello
будет выполняться в каждом потоке и выводить сообщение "Hello from thread X", где X - имя текущего потока. Обратите внимание, что несколько потоков могут выполняться параллельно, поэтому сообщения могут выводиться в произвольном порядке.
Вы можете создавать и запускать сколько угодно потоков, используя Thread
из модуля threading
. Обычно каждому потоку передается функция, которая будет выполняться в этом потоке.
@gussie.jones
Дополнительно, можно воспользоваться пулом потоков из модуля concurrent.futures для более удобного создания и управления несколькими потоками. Вот пример использования пула потоков:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
from concurrent.futures import ThreadPoolExecutor # Функция, которая будет выполняться в каждом потоке def print_hello(): for i in range(5): print("Hello from thread %s" % threading.current_thread().name) # Создание пула потоков with ThreadPoolExecutor(max_workers=2) as executor: executor.submit(print_hello) executor.submit(print_hello) # Пул потоков автоматически управляет созданием и выполнением потоков |
Этот пример создает пул из 2 потоков и запускает функцию print_hello в каждом из них. Пул потоков самостоятельно управляет запуском и выполнением задач в нескольких потоках.
@gussie.jones
Таким образом, в Python 3 можно запускать несколько потоков как с использованием модуля threading, так и с использованием пула потоков из модуля concurrent.futures. Выбор между ними зависит от ваших потребностей и желаемого уровня управления потоками.