Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk5 min

Riverpod: Notifier para la cola, AsyncNotifier.family para cada recurso

Una cola secuencial y un provider asíncrono por recurso resuelven responsabilidades distintas. La serialidad y los reintentos por elemento siguen siendo reglas de la aplicación.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

La separación tiene sentido cuando la cola coordina comandos como estado síncrono de la aplicación, mientras que cada recurso asíncrono identificado por un argumento tiene su propio ciclo de carga. Un Notifier puede mantener y actualizar el estado de la cola; un AsyncNotifier.family puede representar, por ejemplo, la carga de sincronización de cada dispositivo. Riverpod no convierte la cola en FIFO ni define los reintentos por elemento: esas reglas deben implementarse explícitamente.

Qué responsabilidad tiene cada notifier

Notifier encaja con estado que puede inicializarse sincrónicamente. Sus métodos públicos pueden iniciar efectos secundarios y actualizar el estado que observa la interfaz. Esto permite que la cola sea propietaria de datos como los elementos pendientes, el trabajo activo y los resultados ya procesados.

As an Amazon Associate I earn from qualifying purchases.

AsyncNotifier está pensado para inicialización asíncrona y expone ese ciclo mediante AsyncValue. Se parece a FutureProvider, pero además permite métodos para efectos secundarios. Si el resultado depende de un argumento —por ejemplo, una carga asociada a un identificador de dispositivo—, AsyncNotifier.family ofrece un provider diferenciado por argumento. La guía de migración explica cómo el argumento queda disponible para la lógica del notifier: migración desde StateNotifier.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

La documentación de Riverpod 2 recomienda (Async)NotifierProvider para gestionar estado que cambia en respuesta a interacciones del usuario y centralizar la lógica de modificación: (Async)NotifierProvider en Riverpod 2. La elección entre las dos variantes depende sobre todo de si la inicialización es síncrona o asíncrona, no de que una de ellas implemente una cola por sí sola.

Cómo decidir entre Notifier y AsyncNotifier.family

Criterio Notifier AsyncNotifier.family
Inicialización Estado inicial síncrono. Estado inicial asíncrono, expuesto con AsyncValue.
Parametrización Adecuado para estado compartido, como la coordinación de una cola. Un estado asíncrono asociado a cada argumento, como un identificador de recurso.
Unidad de reintento La política por elemento de la cola debe definirla la aplicación. Riverpod puede reintentar fallos del cálculo del provider; eso no equivale a reintentar un elemento de cola.
Estado visible El modelo puede incluir el progreso específico que necesita la cola. AsyncValue expresa carga, éxito o error, pero no representa por sí solo varios elementos pendientes y sus estados.

Para APIs con generación de código, la forma de declarar y recibir el argumento puede diferir de la API sin generación. En Riverpod 3 también cambiaron las interfaces family: FamilyNotifier y Notifier se fusionaron. No mezcles ejemplos de distintas versiones sin comprobar la sintaxis correspondiente. La guía de Riverpod 3 describe esos cambios: novedades de Riverpod 3.0. La documentación de generación de código explica los modelos de providers declarados mediante funciones o clases.

Qué significa realmente “cola secuencial”

La serialidad es una propiedad de la implementación de la aplicación. Antes de elegir el notifier, define las reglas de ejecución: una cola secuencial puede significar que solo haya un trabajo activo, que se respete el orden de inserción y que el siguiente elemento no comience hasta que el anterior termine. Riverpod no garantiza esas condiciones automáticamente.

  • Orden: decide si los elementos se ejecutan estrictamente en orden de inserción o si existe una regla de prioridad.
  • Fallo: establece si un elemento fallido bloquea los siguientes, se reprograma al final o se marca como fallido y permite avanzar.
  • Reintentos: determina cuáles errores se reintentan, cuántos intentos se permiten y qué espera se aplica entre ellos.
  • Efectos externos: comprueba si repetir una operación es seguro. Si no es idempotente, un reintento puede duplicar una acción que sí llegó a realizarse aunque la respuesta se haya perdido.
  • Cancelación: define si cancelar afecta solo al seguimiento en la interfaz o también puede detener el trabajo externo.

Por eso suele ser útil separar el estado de coordinación de la cola del estado asíncrono de cada recurso. La cola puede decidir qué operación sigue; el provider family puede cargar o exponer el estado particular de un recurso. Esa separación ayuda a hacer visibles las responsabilidades, pero no impone una política concreta de ejecución.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Los reintentos de Riverpod no son reintentos de cola

En Riverpod 3, un provider cuyo cálculo falla puede reintentarse automáticamente con retroceso exponencial. La política documentada empieza con 200 ms, duplica la demora hasta un máximo de 6,4 s y puede configurarse en ProviderScope, ProviderContainer o en un provider individual. La función de retry puede devolver null para detener los intentos. Estos valores describen la política del framework para providers, no una garantía sobre el procesamiento de comandos de una cola: novedades de Riverpod 3.0.

La política predeterminada no reintenta Error ni ProviderException. Este último puede indicar que falló un provider del que depende otro; volver a intentar el dependiente no necesariamente corrige el origen. La documentación de retry detalla esos matices: reintento automático.

La unidad del fallo importa. Si el cálculo inicial de un provider falla, Riverpod puede aplicar su política al provider. Si un método de la cola procesa un elemento y captura o transforma su excepción, no se debe asumir que el framework reintentará ese elemento. Determina dónde se produce y propaga el error y documenta el comportamiento de la cola por separado.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Estado de la cola y presentación en la interfaz

AsyncValue ofrece estados de carga, éxito y error útiles para presentar un resultado asíncrono. La guía de la primera aplicación de Riverpod muestra cómo derivar la interfaz a partir de esos estados: primera aplicación con Riverpod.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Una cola suele requerir más detalle que un único estado de carga o error. Si la pantalla debe mostrar progreso, incluye en el modelo de cola lo que necesite: pendientes, elemento activo, completados y fallidos, por ejemplo. Son datos de la aplicación; AsyncValue no los crea ni los mantiene automáticamente.

Ciclo de vida: qué pasa si el provider se dispone

Riverpod 3 restringe el uso de Ref o de un notifier después de su disposición. Tras una espera asíncrona, una continuación debe comprobar si el objeto sigue montado antes de volver a interactuar con él, mediante Ref.mounted cuando corresponda. La disposición del provider tampoco debe confundirse con la cancelación garantizada de un efecto externo ya iniciado; define por separado quién es propietario de un trabajo de larga duración y qué ocurre si desaparece su consumidor. Los cambios de ciclo de vida están descritos en la documentación de Riverpod 3.0.

Una regla práctica para la arquitectura

  • Usa un Notifier para coordinar estado de cola que se inicializa sincrónicamente y cambia mediante acciones de la aplicación.
  • Usa AsyncNotifier.family cuando cada argumento identifique un estado asíncrono independiente que la interfaz o la lógica necesite observar.
  • Define en la cola el orden, avance tras errores, límites de reintentos, esperas y condiciones de idempotencia.
  • Usa la política de retry de Riverpod para fallos de cálculo de providers, sin tratarla como sustituto de las reglas por elemento.
  • Comprueba el ciclo de vida al continuar después de una espera y asigna deliberadamente la propiedad de trabajos que deban sobrevivir al consumidor.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.