Cómo se comporta la memoria caché del búfer de Linux cuando una aplicación se bloquea?

Digamos que estoy usando la transmisión de archivos c ++ de forma asincrónica. Me refiero a nunca usar std :: flush ni std :: endl. Mi aplicación escribe muchos datos en un archivo y se bloquea abruptamente. ¿Los datos que quedan en el sistema de caché se descargan en el disco o se descartan (y se pierden)?