ArrayBlockingQueue
2 participants
Page 1 sur 1
ArrayBlockingQueue
Bonjour
Après avoir regardé la video de cours sur ArrayBlockingQueue,
j'ai fait moi-même un petit programme pour l'essayer:
3 classes: commande, client et resto,
les clients créent une commande et la met dans une ArrayBlockingQueue en faisant un affichage pour signaler que l'insertion a été faite.
le resto retire une commande de ArrayBlockingQueue, puis siganle le prix au client.
Je suis un peu embrouillé par les affichages,genre:
pour 4 clients
client 1:....
client 3:....
client 4:....
client 2:....
resto: 1 euro pour client 1
resto: 1 euro pour client 4
resto: 1 euro pour client 2
resto: 1 euro pour client 3
Le professeur a dit que c'est "first in first out" pour le mécanisme de ArrayBlockingQueue,
donc normalement je dois avoir un affichage dans l'ordre tel que :
resto: 1 euro pour client 1
resto: 1 euro pour client 3
resto: 1 euro pour client 4
resto: 1 euro pour client 2
Donc je voudrais savoir si c'est moi qui ai mal compris le mécanisme de ArrayBlockingQueue ou
c'est mon programme qui est mal fait.
Merci par avance.
Après avoir regardé la video de cours sur ArrayBlockingQueue,
j'ai fait moi-même un petit programme pour l'essayer:
3 classes: commande, client et resto,
les clients créent une commande et la met dans une ArrayBlockingQueue en faisant un affichage pour signaler que l'insertion a été faite.
le resto retire une commande de ArrayBlockingQueue, puis siganle le prix au client.
Je suis un peu embrouillé par les affichages,genre:
pour 4 clients
client 1:....
client 3:....
client 4:....
client 2:....
resto: 1 euro pour client 1
resto: 1 euro pour client 4
resto: 1 euro pour client 2
resto: 1 euro pour client 3
Le professeur a dit que c'est "first in first out" pour le mécanisme de ArrayBlockingQueue,
donc normalement je dois avoir un affichage dans l'ordre tel que :
resto: 1 euro pour client 1
resto: 1 euro pour client 3
resto: 1 euro pour client 4
resto: 1 euro pour client 2
Donc je voudrais savoir si c'est moi qui ai mal compris le mécanisme de ArrayBlockingQueue ou
c'est mon programme qui est mal fait.
Merci par avance.
Heros- Posts : 12
Join date : 08/09/2017
Re: ArrayBlockingQueue
Bonjour,
Difficile de répondre sans le code ; ce qui peut expliquer l'absence de réponse pendant aussi longtemps…
Un premier élément de réponse tout de même : même si affichage et ajout à la file semblent consécutifs dans le code pour chaque client, rien ne garantit que l'ordre des ajouts et l'ordre des affichages coïncident : sauf verrouillage spécifique, ils peuvent être entrelacés.
Difficile de répondre sans le code ; ce qui peut expliquer l'absence de réponse pendant aussi longtemps…
Un premier élément de réponse tout de même : même si affichage et ajout à la file semblent consécutifs dans le code pour chaque client, rien ne garantit que l'ordre des ajouts et l'ordre des affichages coïncident : sauf verrouillage spécifique, ils peuvent être entrelacés.
coriatf- Posts : 4
Join date : 06/09/2017
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|