Saltar al contenido

¿Cuál es la diferencia entre Sink y Stream en Flutter?

Puede que se de el caso de que encuentres alguna incompatibilidad en tu código o proyecto, recuerda probar siempre en un entorno de testing antes aplicar el código al proyecto final.

Solución:

Sink y Stream ambos son partes del StreamController. Agregas un dato a la StreamController usando Sink que se puede escuchar a través del Stream.

Ejemplo:

final _user = StreamController();
Sink get updateUser => _user.sink;
Stream get user => _user.stream;

Uso:

updateUser.add(yourUserObject); // This will add data to the stream.

Cada vez que se agreguen datos a la transmisión a través del sumidero, se emitirán y se podrán escuchar con el método de escucha.

user.listen((user) => print(user)); 

Puede realizar varias acciones antes de que se emita la secuencia. transform El método es un ejemplo que se puede usar para transformar los datos de entrada antes de que se emitan.

A StreamSink es un StreamConsumerlo que significa que puede tomar varios flujos (agregado por addStream) y procesa los eventos que emiten estos flujos.

si es el StreamSink de un StreamController entonces todos los eventos de los flujos agregados son emitidos por el flujo creado por el StreamController.

De esta manera, puede canalizar (reenviar) uno o más flujos a otro.

Si está buscando definiciones muy básicas sobre flujo y sumideros, consulte esto:

Corriente – la cinta transportadora se llama corriente

controlador de flujo – esto es lo que controla la corriente

Transformador de corriente – esto es lo que procesa los datos de entrada

StreamBuilder – es un método que toma la transmisión como entrada y nos proporciona un generador que se reconstruye cada vez que hay un nuevo valor de una transmisión

pileta – la propiedad que toma una entrada

corriente – la propiedad que da la salida de Stream

Para obtener más detalles, consulte este artículo.

valoraciones y reseñas

Si para ti ha sido provechoso este post, nos gustaría que lo compartas con otros seniors de esta forma contrubuyes a extender nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *