Quelle est la différence entre les files d'attente de messages et les pools d'unités d'exécution?File d'attente de messages File d'attente VS
Répondre
La vraie question serait de savoir s'il y a une similitude entre les deux. Une file d'attente de messages est une structure de données destinée à contenir des messages à partir du moment où ils sont envoyés jusqu'au moment où le destinataire les récupère et agit sur eux.
Un pool de threads est un pool de threads qui effectuent un certain type de traitement. Un pool de threads aura normalement une sorte de file d'attente thread-safe pour vous permettre de faire la queue des tâches à faire. Cela s'appellerait plus souvent quelque chose comme une "file d'attente de tâches" qu'une file d'attente de messages, bien qu'elle contienne normalement un type de message décrivant les tâches à effectuer.
Merci pour votre explication. – peterwkc
Je me demande si la file d'attente de messages imposée à l'expéditeur et au destinataire doit provenir d'un processus ou d'un thread différent. – peterwkc
@peterwkc: chaque file d'attente de messages que j'ai vue permet à un thread de poster un message sur lui-même. –
Message Queue est utilisé pour la communication inter-processus (asynchrone) alors qu'un Thread Pool nous sert à exécuter plusieurs tâches sur un ensemble de threads. Je ne peux pas penser à un moyen raisonnable de les comparer ... ils sont fondamentalement différents les uns des autres à bien des égards.
Merci pour votre explication. – peterwkc
Aucune différence. C'est un exemple parfait de deux phrases qui signifient exactement la même chose. Comme "Loutre" et "Cheval". Même chose. –
@ S.Lott: "Otter" et "Paix" serait plus comme ça. Les loutres et les chevaux sont tous les deux des animaux à quatre pattes ... –
@Jerry Coffin: Queue and Pool sont deux collections. –