Diferencia entre revisiones de «File.flush()»
De ArduWiki
(→Sintaxis) |
(→Sintaxis) |
||
(No se muestra una edición intermedia del mismo usuario) | |||
Línea 4: | Línea 4: | ||
== Sintaxis == | == Sintaxis == | ||
<pre> | <pre> | ||
− | File archivo; | + | File archivo = SD.open("archivo.txt", FILE_WRITE); |
archivo.flush(); | archivo.flush(); | ||
</pre> | </pre> | ||
Línea 13: | Línea 13: | ||
== Retorna == | == Retorna == | ||
Nada. | Nada. | ||
− | |||
− | |||
− | |||
− | |||
== Comentarios == | == Comentarios == | ||
Línea 28: | Línea 24: | ||
* En cada intento de escritura si el archivo se abre con la opción '''O_SYNC'''. | * En cada intento de escritura si el archivo se abre con la opción '''O_SYNC'''. | ||
− | == Ejemplo == | + | == Advertencias == |
+ | * No se recomienda abusar de esta función, no solo por tema de rendimiento sino por tema de desgaste en la tarjeta SD. | ||
+ | * Esta función siempre fallará si la instancia representa un directorio o carpeta; o el archivo no fue abierto para escritura. | ||
+ | |||
+ | == Ejemplo 1 == | ||
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
// Pendiente | // Pendiente | ||
Línea 37: | Línea 37: | ||
== Referencias == | == Referencias == | ||
+ | * [https://www.arduino.cc/en/Reference/FileFlush Referencias] | ||
+ | |||
[[Category:Libreria SD]] | [[Category:Libreria SD]] |
Revisión actual del 21:25 3 jul 2019
Contenido
Descripción
Fuerza la actualización de los datos en la tarjeta SD (y el atributo del tamaño del archivo en caso de que haya crecido).
Sintaxis
File archivo = SD.open("archivo.txt", FILE_WRITE); archivo.flush();
Parámetros
Nada.
Retorna
Nada.
Comentarios
Esta es una opción ya que, como en la página principal de esta librería se mencionó, es un flujo de datos por bloques; lo que quiere decir que escribir datos no lo hace inmediatamente al medio físico (por cuestiones de rendimiento), sino que primero los registra en SRAM mediante una caché. Cuando esta se llene, automáticamente debe escribir esos datos al medio físico (la tarjeta SD) para así poder seguir con la escritura.
Este proceso de actualización ocurre en alguna de las siguientes situaciones:
- Al llamar esta función (manualmente).
- Al cambiar de bloque de datos (cada 512 bytes) si el que está en caché ha cambiado su contenido tras su lectura.
- Al cerrar el archivo (aplica la misma regla de la anterior).
- En cada intento de escritura si el archivo se abre con la opción O_SYNC.
Advertencias
- No se recomienda abusar de esta función, no solo por tema de rendimiento sino por tema de desgaste en la tarjeta SD.
- Esta función siempre fallará si la instancia representa un directorio o carpeta; o el archivo no fue abierto para escritura.
Ejemplo 1
// Pendiente
Vea también