Maison >développement back-end >Tutoriel Python >Que peut faire le module de thread python ? (exemples détaillés)

Que peut faire le module de thread python ? (exemples détaillés)

乌拉乌拉~
乌拉乌拉~original
2018-08-23 17:41:442094parcourir

Dans l'article suivant, nous découvrirons ce qu'est le module de threading python. Découvrez le module de threading Python et le rôle que le module de threading peut jouer dans la programmation Python.

Module Threading

Le threading est utilisé pour fournir des opérations liées aux threads. Un thread est la plus petite unité de travail dans une application.

Le threading est utilisé pour fournir des opérations liées aux threads

Le module threading est construit sur le module _thread. Le module thread gère et contrôle les threads de manière primitive et de bas niveau, tandis que le module threading fournit une API plus pratique pour gérer les threads par encapsulation secondaire des threads.

import threading
import time

def worker(num):
    """
    thread worker function
    :return:
    """
    time.sleep(1)
    print("The num is  %d" % num)
    return
    
for i in range(20):
    t = threading.Thread(target=worker, args=(i,),name =“t. % d” % i)
    t.start()

Le code ci-dessus crée 20 threads « de premier plan », puis le contrôleur est transmis au CPU. Le CPU planifie selon l'algorithme spécifié et exécute les instructions en tranches.

Description de la méthode du thread

t.start() : Activer le fil de discussion,

t.getName() : Récupère le nom du fil

t .setName( ) : Définit le nom du fil de discussion

t.name : Récupère ou définit le nom du fil de discussion

t.is_alive() : Détermine si le fil de discussion est actif

t.isAlive( ) : Déterminez si le thread est actif

t.setDaemon() Définissez-le comme thread d'arrière-plan ou de premier plan (par défaut : False : définissez si le thread est un thread démon); une valeur booléenne, vous devez exécuter la méthode start(). Elle ne peut être utilisée qu'après cela. S'il s'agit d'un thread d'arrière-plan, le thread d'arrière-plan s'exécute également pendant l'exécution du thread principal. Une fois le thread principal exécuté, le thread d'arrière-plan s'arrête quel que soit le succès ou l'échec. S'il s'agit d'un thread de premier plan, le thread de premier plan l'est également. s'exécutant pendant l'exécution du thread principal. Une fois l'exécution du thread principal terminée, le programme s'arrête après avoir attendu que le thread de premier plan termine son exécution

t.isDaemon() : détermine s'il s'agit d'un thread démon <.>

t.ident : Récupère l'identifiant du fil de discussion. L'identifiant du thread est un entier non nul. Cette propriété n'est valide qu'après l'appel de la méthode start(), sinon elle renvoie simplement None.

t.join() : exécute chaque thread un par un et continue l'exécution une fois terminé. Cette méthode rend le multithreading inutile

t.run() : le thread est bloqué par le. CPU Exécuter automatiquement la méthode d'exécution de l'objet thread après la planification

Plus de méthodes

start Le thread est prêt et attend la planification du CPU

setName Set le nom du fil

getName obtient le nom du fil

setDaemon est défini sur le fil d'arrière-plan ou le fil de premier plan (par défaut, s'il s'agit d'un fil d'arrière-plan, le fil d'arrière-plan est également en cours d'exécution pendant le processus) ; exécution du thread principal.Une fois l'exécution du thread principal terminée, le thread d'arrière-plan s'arrêtera quel que soit le succès ou l'échec ; s'il s'agit d'un thread de premier plan, pendant l'exécution du thread principal, le thread de premier plan est également en cours. le thread termine l'exécution, le programme s'arrête après avoir attendu que le thread de premier plan termine l'exécution

join exécute chaque thread un par un et continue l'exécution une fois terminé. Cette méthode rend le multithreading inutile

exécution. Le thread exécute automatiquement la méthode d'exécution de l'objet thread après avoir été planifié par le CPU

Lock Thread Lock (Mutex)

Événement

Ce qui précède est tout le contenu décrit dans cet article.Cet article présente principalement les connaissances pertinentes du

module de threading python , j'espère que vous pourrez utiliser les informations pour comprendre le contenu ci-dessus. J'espère que ce que j'ai décrit dans cet article vous sera utile et vous facilitera l'apprentissage de Python.

Pour plus de connaissances connexes, veuillez visiter la colonne

Tutoriel Python du site Web php chinois.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn