Uso del método flush() en Java Streams

Muhammad Zeeshan 12 octubre 2023
  1. el método flush() en Java
  2. Propósito del Método flush()
Uso del método flush() en Java Streams

Este artículo discutirá la función flush() que se reproduce en los flujos de Java y su propósito principal.

el método flush() en Java

Este flujo de Writer se puede vaciar usando la función flush(), que se puede encontrar en la clase Writer. Después de determinar si el destino contenía o no otro carácter o secuencia de bytes, el destino se vaciaba si la secuencia guardaba algún carácter de los diversos métodos write() en un búfer antes de escribirlos inmediatamente en su destino previsto.

Si la secuencia guardó algún carácter, el destino se vació. Si el destino incluía otro carácter o flujo de bytes, entonces usar flush() solo una vez fue suficiente para vaciar todos los datos del búfer en una cadena de flujos de escritura y salida.

El objetivo principal del almacenamiento en búfer es mejorar el rendimiento de las operaciones de E/S.

Propósito del Método flush()

Cuando escribimos datos en una secuencia, los datos no se escriben instantáneamente. En su lugar, se almacena en un búfer. Cuando debemos estar seguros de que todos los datos del búfer han sido escritos, usamos la función flush().

Dado que necesitamos estar seguros de que todas las escrituras se han terminado antes de que podamos cerrar la transmisión, la función flush() se llama al cerrar el archivo o se almacena en el búfer writer(). Sin embargo, deberíamos usar flush() si es necesario que cualquiera de estas escrituras se conserve en cualquier punto antes de que finalice el stream().

Cuando todas las ubicaciones de la memoria temporal han alcanzado su capacidad, usamos la función flush(). Esto borra todos los flujos de datos, garantiza que se procesen por completo y deja espacio para diferentes flujos de datos en la ubicación del búfer temporal.

Pongamos un ejemplo para entenderlo claramente. Primero, crearemos una variable de cadena y la completaremos con algunos datos.

String s = "Hey, Muhammad Zeeshan Here! Let's Code!";

La función escribir () se usa luego para enviar la cadena al Escritor de secuencias.

w.write(s);

Puede enviar instantáneamente los datos a la transmisión usando la función flush().

w.flush();

Y por último, finalizamos la transmisión usando la función cerrar().

close();

Código fuente completo:

import java.io.*;

public class Shanii {
  public static void main(String[] args) throws Exception {
    String s = "Hey, Muhammad Zeeshan Here! Let's Code!";
    Writer w = null;
    w = new PrintWriter(System.out);
    w.write(s);
    w.flush();
    System.out.println();
    w.close();
  }
}

Producción :

Hey, Muhammad Zeeshan Here! Let's Code!
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

Artículo relacionado - Java Method