La file d'attente de vs JoinableQueue en Python
En Python tout en utilisant le multitraitement module il existe 2 types de files d'attente:
- File d'attente
- JoinableQueue.
Quelle est la différence entre eux?
File d'attente
from multiprocessing import Queue
q = Queue()
q.put(item) # Put an item on the queue
item = q.get() # Get an item from the queue
JoinableQueue
from multiprocessing import JoinableQueue
q = JoinableQueue()
q.task_done() # Signal task completion
q.join() # Wait for completion
OriginalL'auteur axcelenator | 2015-07-05
Vous devez vous connecter pour publier un commentaire.
JoinableQueue
a des méthodesjoin()
ettask_done()
, quiFile
n'a pas.Si vous utilisez
JoinableQueue
ensuite, vous devez appelerJoinableQueue.task_done()
pour chaque tâche retiré de la file d'attente ou bien le sémaphore utilisé pour compter le nombre de tâches inachevées peuvent, éventuellement, de dépassement, de lever une exception.D'ailleurs en citant la documentation - ce qui fait cette réponse apporter ? Un exemple et une certaine interprétation serait sympa
OriginalL'auteur fferri