HOWTO · Python

Iniciar um tópico em Python

use o módulo de threading para criar e iniciar um thread em python

Nesta página

Este tutorial irá apresentar o módulo threading para criar e iniciar um thread em Python.

Definição de Tópico

Um thread é um conjunto de operações que precisam ser executadas. A execução de threads significa que o programa terá duas ou mais coisas em execução ao mesmo tempo. Um thread só pode ser executado em um núcleo da CPU. Threading é sobre como lidamos com os threads em um núcleo da CPU.

Implementação de Thread em Python

Python usa o módulo threading para implementar threads em programas. Você pode criar uma instância Thread e então chamá-la para iniciar um thread separado.

Ao criar uma instância Thread, você passa uma função e uma lista de argumentos para essa função. Neste caso, você está dizendo ao Thread para executar a função thread_function() e passar 1 como um argumento.

O thread_function() registra algumas mensagens e dorme por dois segundos.

# python 3.x
from threading import Thread
import time
import logging


def thread_function(name):
    logging.info("Thread %s: starting", name)
    time.sleep(2)
    logging.info("Thread %s: finishing", name)


if __name__ == "__main__":
    format = "%(asctime)s: %(message)s"
    logging.basicConfig(format=format, level=logging.INFO, datefmt="%H:%M:%S")
    thread = Thread(target=thread_function, args=(1,))
    thread.start()
    logging.info("Exiting")

Resultado:

10:23:58: Thread 1: starting
10:23:58: Exiting
10:24:00: Thread 1: finishing

Visualização de segmentação

O fluxo do programa é apresentado a seguir. Depois de chamar start(), ele dispara thread_function() e é executado em uma thread separada. O programa principal também é executado em paralelo como outro thread.

iniciar discussão em python