Как создать новый поток в Python

Опубликовано: 12 Апреля, 2022

Threadsin python - это объект внутри процесса, который можно запланировать для выполнения. Проще говоря, поток - это вычислительный процесс, который должен выполняться компьютером. Это последовательность таких инструкций в программе, которая может выполняться независимо от других кодов.
В python есть два способа создать новый поток. В этой статье мы также будем использовать модуль потоковой передачи в Python. Ниже приводится подробный список этих процессов:

1. Создание потоков Python с использованием класса:

Below has a coding example followed by the code explanation for creating new threads using class in python. 
 

Python3

# import the threading module
import threading
 
class thread(threading.Thread):
    def __init__(self, thread_name, thread_ID):
        threading.Thread.__init__(self)
        self.thread_name = thread_name
        self.thread_ID = thread_ID
 
        # helper function to execute the threads
    def run(self):
        print(str(self.thread_name) +" "+ str(self.thread_ID));
 
thread1 = thread("GFG", 1000)
thread2 = thread("GeeksforGeeks", 2000);
 
thread1.start()
thread2.start()
 
print("Exit")

Выход:

 GFG 1000
GeeksforGeeks 2000
Выход

Теперь давайте посмотрим, что мы сделали в коде.

  1. Мы создали подкласс класса потока.
  2. Затем мы переопределили функцию __init__ класса потока.
  3. Затем мы переопределили метод run, чтобы определить поведение потока.
  4. Метод start () запускает поток Python.

2. Создание потоков Python с использованием функции:

The below code shows the creation of new thread using a function: 
 

Python3

from threading import Thread
from time import sleep
 
# function to create threads
def threaded_function(arg):
    for i in range(arg):
        print("running")
         
        # wait 1 sec in between each thread
        sleep(1)
 
 
if __name__ == "__main__":
    thread = Thread(target = threaded_function, args = (10, ))
    thread.start()
    thread.join()
    print("thread finished...exiting")

Выход:

 Бег
Бег
Бег
Бег
Бег
Бег
Бег
Бег
Бег
Бег
поток завершен ... выход

Итак, что мы сделали в приведенном выше коде,

  1. Мы определили функцию для создания потока.
  2. Затем мы использовали модуль threading для создания потока, который вызывал функцию в качестве своей цели.
  3. Затем мы использовали метод start (), чтобы запустить поток Python.

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.