Diferencia entre revisiones de «File.flush()»

De ArduWiki
Saltar a: navegación, buscar
(Página creada con «== 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 == <pre> archivo...»)
 
(Sintaxis)
 
(No se muestran 4 ediciones intermedias del mismo usuario)
Línea 4: Línea 4:
 
== Sintaxis ==
 
== Sintaxis ==
 
<pre>
 
<pre>
 +
File archivo = SD.open("archivo.txt", FILE_WRITE);
 
archivo.flush();
 
archivo.flush();
 
</pre>
 
</pre>
Línea 12: Línea 13:
 
== Retorna ==
 
== Retorna ==
 
Nada.
 
Nada.
 
== 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.
 
  
 
== Comentarios ==
 
== Comentarios ==
Línea 27: 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 33: Línea 34:
  
 
== Vea también ==
 
== Vea también ==
* [[SD.open()]]
+
<categorytree mode=all>Libreria SD</categorytree>
  
 
== Referencias ==
 
== Referencias ==
 +
* [https://www.arduino.cc/en/Reference/FileFlush Referencias]
 +
 +
[[Category:Libreria SD]]

Revisión actual del 17:25 3 jul 2019

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


Referencias