Maison > Article > développement back-end > Affichage des fonctions du pool de processus Python et exemple d'analyse
Dans l'article suivant, nous découvrirons ce qu'est le pool de processus en python. Découvrez le pool de processus Python et le rôle qu'il peut jouer dans la programmation Python.
Pool de processus
La classe Pool décrit un pool de processus de travail. Elle dispose de plusieurs méthodes différentes pour que les tâches puissent décharger les processus de travail.
Le pool de processus maintient une séquence de processus en interne. Lorsqu'il est utilisé, il va dans le pool de processus pour obtenir un processus. S'il n'y a pas de processus disponible dans la séquence du pool de processus, le programme attendra qu'il soit dans le pool de processus. pool de processus jusqu’à ce qu’il y ait des processus disponibles.
Nous pouvons utiliser la classe Pool pour créer un pool de processus et étendre les tâches soumises au pool de processus.
Donnons un exemple :
#apply from multiprocessing import Pool import time def f1(i): time.sleep(0.5) print(i) return i + 100 if __name__ == "__main__": pool = Pool(5) for i in range(1,31): pool.apply(func=f1,args=(i,)) #apply_async def f1(i): time.sleep(0.5) print(i) return i + 100 def f2(arg): print(arg) if __name__ == "__main__": pool = Pool(5) for i in range(1,31): pool.apply_async(func=f1,args=(i,),callback=f2) pool.close() pool.join()
Un objet pool de processus peut contrôler quels travaux dans le pool de processus de travail peuvent être soumis. Il prend en charge les résultats asynchrones des délais d'attente et des rappels. -comme une réalisation.
processus : le nombre de processus de travail utilisés. Si les processus sont Aucun, utilisez le nombre renvoyé par os.cpu_count().
initializer : Si initializer est None, alors chaque processus de travail appellera initializer(*initargs) au début.
maxtasksperchild : nombre de tâches pouvant être terminées avant la fin du processus de travail. Une fois terminé, un nouveau processus de travail sera utilisé pour remplacer le processus d'origine afin de libérer les ressources inutilisées. maxtasksperchild est défini par défaut sur Aucun, ce qui signifie que le processus de travail survivra tant que le pool existera.
contexte : utilisé pour définir le contexte au démarrage du processus de travail. Généralement, la méthode multiprocessing.Pool() ou la méthode Pool() d'un objet contextuel est utilisée pour créer un pool de manière appropriée. 🎜>
Remarque : Les méthodes de l'objet Pool ne peuvent être appelées que par le processus qui a créé le pool. Ce qui précède est tout le contenu décrit dans cet article. Cet article présente principalement les connaissances pertinentes dupool de processus 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 colonneTutoriel 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!