write working with read from files example create java file-io metadata java-io

working - Java: ¿Modo RandomAccessFile "rws" vs "rwd"?



use files java (2)

¿Significa que "rws" actualiza la última marca de tiempo modificada en el sistema de archivos, y "rwd" no?

rws vacía el contenido del archivo y la fecha de modificación del archivo.

rwd vacía el contenido del archivo, pero la fecha de modificación puede no cambiar hasta que se cierre el archivo.

rw solo se sonroja cuando se lo indica y no cambia la fecha de modificación hasta que cierre el archivo.

BTW rwd es mucho más lento para escribir que rw, y rws es más lento de nuevo.

El constructor RandomAccessFile acepta una cadena de mode especifica cómo debe abrirse un archivo.

Estoy confundido acerca de la diferencia entre los "rws" y "rwd" .

Esto es lo que dicen los documentos :

"rws" Abre para lectura y escritura, como con "rw", y también requiere que cada actualización del contenido o metadatos del archivo se grabe de forma síncrona con el dispositivo de almacenamiento subyacente.

"rwd" Abre para leer y escribir, como con "rw", y también requiere que cada actualización del contenido del archivo se escriba sincrónicamente en el dispositivo de almacenamiento subyacente.

[...]

El modo "rwd" se puede usar para reducir el número de operaciones de E / S realizadas. El uso de "rwd" solo requiere que las actualizaciones del contenido del archivo se escriban en el almacenamiento; el uso de "rws" requiere que se escriban las actualizaciones tanto del contenido del archivo como de sus metadatos, lo que generalmente requiere al menos una operación de E / S de bajo nivel más.

... y ninguna explicación sobre lo que significan los metadata . ¿Significa que "rws" actualiza la última marca de tiempo modificada en el sistema de archivos, y "rwd" no?


Hay alguna información sobre los metadatos de archivos en FileChannel API http://docs.oracle.com/javase/7/docs/api/java/nio/channels/FileChannel.html

...The file may also have some associated metadata such as access permissions, content type, and last-modification time...

Además, FileChannel.force(boolean metadata) API proporciona más información sobre la diferencia entre rws y rwd (aunque los nombres nunca se mencionan)