Estoy tratando de "limpiar" un ByteBuffer
para que sea cero bytes (todos 0x00
). Traté de recorrer todas las posiciones en el búfer y configurarlas en 0x00
, pero la eficiencia es mala. ¿Hay alguna forma mejor de borrar rápidamente un ByteBuffer
, similar a lo que hace BitSet.clear()
?Borrado rápido (no claro) un ByteBuffer en Java
Tenga en cuenta que ByteBuffer.clear()
no es una solución adecuada para mí en este escenario: tengo que borrar todos los datos dentro del búfer, y no solo reiniciar el puntero al principio.
¿Alguna pista?
Editar: el ByteBuffer se utiliza como parte de la tabla hash, y mantiene las referencias de las entradas de la tabla hash. Cada vez que se necesita enjuagar la tabla hash, tengo que restablecer las entradas de la tabla hash para una posterior inserción de la tabla hash. Como se accede a la tabla hash de forma aleatoria, no puedo simplemente borrar() el estado del búfer de bytes.
¿Puede explicar el caso de uso con más detalle? ¿De qué obtienes el bytebuffer? – jontro
¿Por qué crees que necesitas poner a cero el búfer? – EJP
¿Es un buffer directo? Si no, ¿qué pasa con 'ByteBuffer.wrap (nuevo byte [123456]);' –