El único que puedo encontrar es BoundedFIFOBuffer, que está en desuso. ¿Cualquier otro?¿Existe una colección delimitada no bloqueante en Java?
Respuesta
BoundedFIFOBuffer
en Apache Commons Collections (que supongo que es a lo que te refieres) no está en desuso, acaba de mover paquetes. La original en org.apache.commons.collections
está en desuso, y en su lugar se ha trasladado a org.apache.commons.collections.buffer
Hay algunas colecciones limitadas en Apache commons-collections, incluyendo un BoundedFifoBuffer.
En la misma biblioteca, es también BoundedBuffer y CircularFifoBuffer
Por qué no utilizar un LinkedBlockingQueue
y utilizar los métodos no bloqueantes offer
(o add
) y poll
para acceder a ella? Puede crearlo con una capacidad fija (es decir, para delimitarlo).
Otra buena opción. Gracias. – Justin
Probablemente no valga la pena preocuparse, pero LinkedBlockingQueue seguirá bloqueado. Las versiones futuras de hotspot probablemente puedan optimizar eso. Pero algo a tener en cuenta al crear perfiles más adelante. –
He estado usando Google Collections recientemente. Creo que podrías tener una solución Java Generics con bastante facilidad. Hay una clase llamada ForwardingList que creo que podría implementar esta idea con bastante facilidad. Obviamente no es tan fácil como usar BoundedFifoBuffer (no genérico) o ArrayBlockingQueue.
final ArrayList<MyObject> realList = Lists.newArrayList();
final List<MyObject> list = new ForwardingList<MyObject>() {
protected List<MyObject> delegate() {
return realList;
}
public boolean add(MyObject obj) {
if(delegate().size() > 100) return false;
return delegate().add(obj);
}
};
- 1. E/S UDP no bloqueante frente a E/S UDP bloqueante en Java
- 2. comas de Split cadena delimitada -> FUNCIÓN db.CHARINDEX no existe
- 3. java: devolver una colección
- 4. ruby línea no bloqueante leer
- 5. Twisted: Haciendo código no bloqueante
- 6. Java delimitada limitaciones genéricas en los campos
- 7. ¿Cuál es una buena manera de dividir una cadena no delimitada en Java?
- 8. Construya una Cadena Delimitada
- 9. ¿Existe una alternativa no Java a OSGi?
- 10. Compara rápidamente una cadena contra una colección en Java
- 11. ¿Qué es una colección java?
- 12. Colección existe Criteria en WCF Data Services
- 13. ¿Cómo saber si existe una colección en MongoDB usando Mongoid?
- 14. ¿Verifica si existe un registro en una colección VB6?
- 15. Java: ordenar una colección utilizando una CollatorKey
- 16. ¿Cómo verificar en PyMongo si existe una colección y si existe vacía (eliminar todo de la colección)?
- 17. La configuración regional no existe en Java
- 18. Colección aleatoria de Java
- 19. Comprobando si existe una fecha o no en Java
- 20. SPSite.Exists() devuelve verdadero aunque la colección de sitios no existe
- 21. ¿La asignación de memoria en Linux no es bloqueante?
- 22. fifo/named pipe no bloqueante/asincrónico en shell/filesystem?
- 23. ¿Cómo hacer un QMessageBox no bloqueante y no modal?
- 24. ¿Cuál es la mejor manera de convertir una colección no genérica en una colección genérica?
- 25. ¿Existe una implementación de handlebars.js en Java?
- 26. Java - Hacer una colección de objetos amigable
- 27. sincroniza lecturas a una colección java
- 28. Shove una cadena delimitada en una lista <int>
- 29. Java addAll (colección) vs new ArrayList (colección)
- 30. la conversión de una colección de Java en una colección Scala
Gracias, de alguna manera llegué a la página obsoleta. – Justin