Bonsoir,
Je viens récemment d'apprendre l'existence de l'interface BlockingQueue<T> qui permet de réaliser le modèle producteur / consommateur.
Jusqu'à maintenant je ne connaissais que les méthodes wait() et notify() pour réaliser ce modèle.
1. Quels sont les implémentations de BlockingQueue<T> que vous préférez ? ArrayBlockingQueue ? LinkedBlockingQueue ? ...
2. Sachant qu'il est possible d'imposer une limite à la pile pour LinkedBlockingQueue, quelle différence y a-t-il avec l'implémentation ArrayBlockingQueue du coup ?
Dans le constructeur de ArrayBlockingQueue, est-ce que réserver un tableau new T[nb_element] consomme tant de mémoire que cela ?
3. Il existe plusieurs méthodes "producteur" : add(E e), put(E e), offer(E e), lesquels préférez-vous et pourquoi ?
4. Existe-t-il des cas où l'interface TransferQueue<T> (apparu avec Java 7) est vraiment utile ? (exemple ?)
PS: Ce sujet est la suite d'un autre sujet.
Je vous remercie![]()
Partager