
Cuando una aplicación lee un archivo de un medio, la primera vez el tiempo es significativo ya que el archivo se lee, a veces varios minutos. Pero con lecturas posteriores, solo toma unos segundos y no hay actividad en el disco. Supongo que es porque Windows mantiene el archivo leído en la memoria.
¿Hay alguna manera de decirle a Windows que elimine el caché de un archivo y lo obligue a leerlo nuevamente desde el medio?
Las soluciones obvias son desconectar y volver a conectar una unidad (si es externa) o reiniciar Windows. ¿Existen opciones más sencillas?
Respuesta1
El legendario programador Mark Russinovich ha creado una gran cantidad de herramientas que deben estar en el kit de herramientas de todo administrador y desarrollador de Windows. Una de esas herramientas esRAMMapa. En Vista y versiones posteriores (y 2008R2 es posterior), RAMMap le permitirá liberar grupos de memoria seleccionados.
La opción que desea es Empty
-> Empty Standby List
-- las páginas almacenadas en caché que están limpias y, por lo tanto, elegibles para ser liberadas estarán en la Lista de espera. Tenga en cuenta que no verá que suceda nada en la pantalla RAMMap porque no se actualiza automáticamente. Puede presionar F5
para actualizar la pantalla o mirar en el Administrador de tareas u otra herramienta.
Respuesta2
Sí, existe un programa que puede colapsar el caché de archivos automáticamente cada 5, 10 o cualquier otra cantidad de minutos definida por el usuario. El objetivo principal del programa es reducir el uso de memoria de programas y procesos, pero también puede vaciar/contraer automáticamente el caché de archivos. El programa se llama CLEANMEM y ofrece al usuario una forma muy sencilla de contraer automática y manualmente el caché de archivos.