Un temporizador de actualización para toda la aplicación, no uno por usoUserInfo()

Performancekamo-internal
Shipped
26 de agosto de 2026 a las 3:42 UTC
Author
kamo
Commit
10cb7a4

useUserInfo tiene 194 sitios de llamadas, aproximadamente una docena de ellos montados para toda la sesión. el nave, los proveedores de shell, el launchpad. Cada instancia armó sus propios 5 minutos intervalos y su propio oyente de cambio de visibilidad, por lo que la aplicación llevaba una docena de temporizadores y una docena de oyentes haciendo lo mismo en el mismo momento. Ahora comparten uno de cada uno. Cada suscriptor todavía refresca su propio estado exactamente como antes, así que nada de cómo los cambios de derechos impulsados por los administradores se propagan es diferente. Sólo se trata de no armar a una docena de temporizadores para desencadenar un pedazo de trabajo. Las solicitudes eran ya se unió por cargaUserInfoCompartido y refrescaSuna descompartida, por lo que el lado de la red era Nunca el problema. Una diferencia deliberada de comportamiento, y es una mejora: los casos utilizados para marcar sus propias compensaciones de tiempo de montaje, y ahora comparten una cadencia. Disparar juntos es lo que permite el coalescer realmente los colapsan en una sola petición; garrañas escamereadas cada uno pagado su propio viaje de ida. El temporizador y el oyente se crean cuando llega y derriba el primer suscriptor cuando las últimas hojas, por lo que una superficie no autenticada con ningún usoUserInfo () de los brazos de consumo nada. fireSessionRefresh copia el suscriptor prendido antes de la iteración, por lo que un componente Desmontando medio barrido no puede remodelar la colección debajo de ella. Deliberadamente NO hecho: moviendo el estado del gancho en sí mismo en una tienda compartida. Eso sería colapsar las raíces sucias de reacción en la pestaña se centran hasta uno, que es la mitad más grande de este hallazgo, pero reestructura el modelo de estado del gancho que las puertas derechos y la úlcera a través de 194 sitios de llamadas, y el modo de falla es derechos rancios o equivocados, que no prueba aquí lo pegaría. Quiere un revisor que pueda hacer ejercicio la aplicación. Verificado: tsc --noEmita el uso excesivo deUserInfo, useSoftphone y AuthedChrome con su Importaciones transitivas; los 10 guardias pasan; 66 pruebas a través de los ganchos, sesión y voip Pasan suites.

All changes

Como lo que ves enviaste?

Cada una de estas actualizaciones aterriza en su espacio de trabajo automáticamente. Empieza gratis y verlo crecer semana tras semana.

Arranzar gratis para siempreVer Precios