FileLock cambia entre java 5 y java 6

En Java 1.5, java.nio.channels.FileLock no verificó los archivos que ya estaban bloqueados. Referenciado aquí

El fragmento dice:

La clase java.nio.channels.FileLock busca archivos ya bloqueados por otras instancias de FileChannel

Java SE 6 genera una excepción OverlappingFileLockException si una aplicación intenta bloquear una región que se superpone a una región bloqueada a través de otra instancia de FileChannel. Las versiones anteriores no verificaban los bloqueos de archivos obtenidos por otras instancias de FileChannel. De forma predeterminada, el método java.nio.channels.FileChannel.lock comprueba si el bloqueo solicitado se superpone con una región que posee esta máquina virtual Java.

Entonces, en pre-Java 6, el bloqueo exclusivo de archivos no funcionaba si tenía varios programas escribiendo en el mismo archivo (con cada programa intentando obtener un bloqueo exclusivo). ¿Cómo resolvió esto la gente con Java 5 y antes?

Respuesta 1

Actualmente estoy trabajando con un código bastante dudoso. El código en sí no es heredado, pero el marco que usa es heredado y es bastante malo. Quiero comenzar a escribir algunas pruebas junit para una clase (para un ...

Imagine un proyecto Maven de módulos múltiples, como el siguiente: parent + - core + - main main depende del módulo core. Ahora escribo una clase CoreClass en core, con 2 métodos: method1 () ...

¿Funcionará el próximo código como se esperaba? Cursor c = db.query (tableName, requiredColumns, condition, conditionParams, null, null, sortOrder); while (c.moveToNext ()) {// hacer cosas con filas} ...

¿Cuál es la combinación adecuada de Mockito para el segundo parámetro en este método? Firma: List <Something> findSomething (Object o, Integer ... ids); Probé los siguientes matizadores: cuando (...