Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Esta guía le ayudará a mejorar la capacidad de respuesta de la aplicación Windows mediante la optimización de la latencia para el inicio y las interacciones clave. Las interacciones rápidas y con capacidad de respuesta (conocidas como interacciones de baja latencia) crean una mejor experiencia de usuario. Comprender las expectativas de interacción, medir las duraciones actuales y establecer objetivos para mejorar en función de la clase de interacción puede dar lugar a mejoras significativas en la experiencia y satisfacción de los usuarios.
Guía paso a paso para optimizar las interacciones para el comportamiento dinámico
Los clientes pueden sentirse cuando un inicio de la aplicación, la navegación por menús o la carga de página o contenido es lento. Han llegado a esperar una experiencia rápida y sin problemas y hemos compartido algunos pasos e instrucciones para comprender mejor esas expectativas a continuación.
Los pasos básicos para impulsar la optimización de latencia son:
Defina el escenario y agregue eventos TraceLogging.
Haga una lista de las interacciones clave que pasará un usuario mientras usa la aplicación, como el inicio, la apertura de un menú, la navegación a una página nueva y el contenido de representación, etc. Para cada una de estas interacciones, agregue un evento de inicio y un evento stop que se usará para la medición y el análisis. Obtenga más información sobre cómo agregar TraceLogging, un formato para describir automáticamente el seguimiento de eventos para Windows (ETW).
Establezca objetivos en función de la clase de interacción.
Los usuarios tienen diferentes expectativas para el rendimiento y la capacidad de respuesta de una aplicación en función del tipo de interacción. Por ejemplo, la rapidez con la que se inicia una aplicación frente a la rapidez con la que se carga una página. Piense en el intervalo aceptable de tiempo transcurrido que tardan los usuarios en completar las interacciones clave de la aplicación. Esto puede oscilar entre 200 milisegundos (ms) y 5 segundos (s). A continuación, asigne cada tarea una etiqueta de clase de interacción con un objetivo asociado. A continuación se muestran algunas directrices básicas, junto con sugerencias sobre cómo puede incluir una interfaz de usuario (UI) para mejorar la percepción de la capacidad de respuesta:
| Etiqueta de clase de interacción | Percepción del usuario | Intervalo de retrasos | Ejemplos | Interfaz de usuario sugerida |
|---|---|---|---|---|
| Rápido | Retraso mínimamente notable | 100 - 200 milisegundos | Abrir la barra de aplicaciones, hacer clic con el botón derecho en el menú | |
| Interactivo | Rápido, pero no rápido | 300 - 500 ms | Salir de una aplicación, mostrar los resultados de búsqueda almacenados en caché | |
| Pausa | No es rápido, pero se siente ágil | 500 ms - 1 s. | Vaya a otra página, reanude la aplicación desde un estado suspendido y muestre los resultados de la búsqueda web. | Se puede usar una animación de entrada (por ejemplo, aparición de nuevo contenido) para enmascarar el tiempo necesario para este escenario. |
| Wait | No rápido debido a la cantidad de trabajo para el escenario | De 1 a 3 segundos | Inicio de la aplicación | Se puede usar un cursor giratorio o en espera para anotar el progreso. Tanto una animación de salida como de entrada (por ejemplo, desplazar la página antigua hacia afuera, desplazar la nueva página hacia adentro) se puede usar para ocultar el tiempo necesario en este escenario. |
| Espera larga | Ya no se siente con capacidad de respuesta | 2 - 5 segundos | Inicios de aplicaciones grandes (usar la pantalla de presentación extendida), iniciar una secuencia de vídeo HD | Se muestra una "interfaz de carga"; incluir una opción "cancelar" para el usuario siempre que sea posible. La UI de carga debe estar dentro de la clase de interacción rápida. La interfaz de usuario de carga no necesita mostrar un porcentaje o un tiempo restante. |
| Cautivo | Una espera larga: reservada para escenarios inevitablemente largos y complejos | De 5 a 10 segundos | Inicio de sesión del sistema | Se muestra una "interfaz de carga" o un cuadro de diálogo; siempre que sea posible, incluya una opción de "cancelar" para el usuario. El cuadro de diálogo debe aparecer dentro de la clase de interacción rápida. El cuadro de diálogo debe mostrar un porcentaje o un tiempo restante si esto proporcionaría contexto útil al usuario. |
| Ejecución prolongada | Operaciones largas: es probable que los usuarios realicen múltiples tareas (se trasladen a otras tareas durante la operación) | De 10 a más de 30 segundos | Instalación de nuevas características o actualizaciones, descargas de archivos grandes | La interfaz de usuario debe diseñarse para reflejar la posibilidad de multitarea. Se debe mostrar un cuadro de diálogo de progreso, incluida una estimación de la finalización (porcentaje, tiempo restante, etc.). Como alternativa, la interfaz de usuario puede minimizarse completamente y solo notificar al usuario cuando el escenario haya terminado mediante una notificación emergente. |
Para comprobar las duraciones exactas de interacciones específicas, puede capturar y analizar un seguimiento mediante el Analizador de rendimiento de Windows (WPA).
Antes de capturar el seguimiento, abra el Administrador de tareas para que el dispositivo de prueba esté inactivo y asegúrese de que el uso de la CPU sea inferior a 5%. Al hacerlo, se minimizarán las interferencias de medición y se obtendrán trazas de tamaño razonable. Esto le ayudará a aislar mejor la interacción que pretende medir.
Para capturar un seguimiento, abra una línea de comandos (PowerShell o símbolo del sistema) en modo de administrador.
Escriba el comando:
wpr -start GeneralProfile -filemodeEjecute el escenario de interacción en la aplicación.
Escriba el comando:
wpr -stop Trace.etl
Analice el seguimiento y busque oportunidades de mejora.
Analice la duración de cada interacción clave compatible con la aplicación abriendo el seguimiento que acabas de capturar en el Analizador de rendimiento de Windows (WPA).
- Para abrir el seguimiento en WPA, en la línea de comandos, escriba:
wpa.exe Trace.etl - Expanda la lista desplegable Actividad del sistema y haga doble clic en "Eventos genéricos" para abrir la vista de análisis.
- Elija la serie de eventos relacionada con la aplicación y expanda la lista desplegable "Nombre del proveedor" hasta que pueda encontrar el proceso, el nombre de la tarea y el nombre del evento asociados a la interacción clave que busca. La duración del evento de interacción se mostrará en la columna Hora , así como en el gráfico, que muestra Duración, Hora de inicio y Hora de finalización.
Si la duración del rastro no cumple los objetivos de la categoría de interacción (por ejemplo: 500 ms), identifique los subprocesos clave de su aplicación (probablemente el subproceso de la interfaz de usuario) y examine las pilas principales para el uso de la CPU y los tiempos de espera. *Recuerde que, a medida que realice el análisis, es posible que algunos problemas no sean específicos del código de su propia aplicación.
- Para abrir el seguimiento en WPA, en la línea de comandos, escriba:
Recursos adicionales
Windows developer