Identificar los métodos que consumen más recursos de la cuenta
Los métodos que consumen muchos recursos afectan al rendimiento global
de la ejecución de un programa. Con la vista Flujo de ejecución y la vista Invocación de
método puede identificar fácilmente estos métodos candidatos a su optimización.
Prerrequisitos:
Un método puede ser un candidato a la optimización si se cumple una de las condiciones
siguientes:
- Al método se le llama con más frecuencia de la necesaria. Se puede
mejorar el rendimiento hallando la manera de hacer menos llamadas o bien
haciendo pequeñas mejoras en el método que se utiliza con frecuencia.
- El método tiene un tiempo de ejecución largo.Otra manera de mejorar el rendimiento
consiste en identificar las clases en las que se invierte más tiempo de ejecución
y luego optimizar los métodos que permanecen largo tiempo en la pila.Puede
suceder que esos métodos no se estén ejecutando, sino llamando a otros métodos
para tareas como la ordenación o la delegación.
Localizar los métodos a los que se llama con frecuencia
Para localizar los métodos a los que se llama con frecuencia:
- En la vista Supervisor de perfilado, seleccione un supervisor o un
agente.
- Pulse el botón derecho del ratón y seleccione Abrir con >
Flujo de ejecución. Se abre la vista Flujo de ejecución.
- Pulse el botón Zoom para acercar
para ampliar
una secuencia de llamadas a método.
- Pulse con el botón derecho sobre un nombre de método en la vista gráfica y seleccione Detectar todas las
repeticiones. Verá
que aparecen X en los lugares en los que hay patrones repetidos.
- Acerque esas áreas con el zoom para ver los patrones repetidos y el
número de repeticiones del método.
Localizar métodos con tiempos de ejecución largos
Para localizar métodos que tengan un tiempo de ejecución largo:
- En la vista Flujo de ejecución, fíjese en la longitud de la banda de cada método. La longitud de la
banda es directamente proporcional al tiempo de ejecución.
- Para ver un método con más detalle, abra la vista Invocación de método seleccionando el método, pulsando el botón
derecho del ratón y seleccionando Mostrar invocación de método. Se abre la vista Invocación de método.
- En la vista Estadísticas de método, para ver el tiempo de ejecución del llamador del método,
pulse el botón derecho del ratón y seleccione Mostrar invocación de método.
Esta vista muestra una representación del mismo método en
forma de línea etiquetada.
- En la barra de herramientas local, pulse Mostrar llamador
para ver los
llamadores del método seleccionado en la vista. Cada vez que pulsa
este botón, se visualiza un método situado más arriba en la secuencia de llamadores.
- Seleccione un método. La longitud vertical del área seleccionada indica
el tiempo base del método. Puede determinar el tiempo de ejecución de este
método comprobando la escala de tiempo vertical a la derecha de la vista. La
línea de estado indica el tiempo acumulativo del método.
Obtener una vista amplia de la ejecución del programa
Para obtener una vista más amplia del tiempo de ejecución:
- Abra la vista Flujo de ejecución: en el menú emergente del supervisor, en la vista Supervisor
de perfilado, seleccione Abrir con > Flujo de ejecución.
- Esta vista, al igual que la vista Invocación de método, tiene una escala
de tiempo vertical a lo largo de la parte izquierda.
- Utilice el botón Zoom para acercar
para
ampliar una sección concreta de la vista con el fin de resaltar el método que desea
examinar.
- Pulse el nombre del método (o pulse en el espacio en blanco más abajo
del método) para seleccionarlo. La longitud vertical del área resaltada ofrece una
indicación del tiempo base del método. El valor exacto del tiempo base se
visualiza en la línea de estado.
- Utilice el botón Zoom para alejar
para ver una parte más grande del programa y seguir viendo el área resaltada del método
(es decir, seguir viendo el área rectangular de color amarillo).
Aunque no se vea la representación de
toda la ejecución, podrá determinar cuánto tiempo consume este método en
relación con todo el programa.
Conceptos relacionados
Visión general de la herramienta de perfilado
Vista y tabla Flujo de ejecución
Vistas estadísticas
Tareas relacionadas
Perfilar una aplicación
Lanzar o conectar un proceso Java
Estudiar la recogida de basura
(C) Copyright IBM Corporation 2000, 2006. Reservados todos los derechos.