7 votos

¿Cómo obtener los tiempos de ejecución de procesos en qgis?

Estoy trabajando en QGIS. Necesito saber cuánto tiempo de QGIS necesaria para completar una tarea específica. He sido incapaz de obtener tiempos de ejecución de los procesos. Cuál es la forma correcta para obtener el tiempo de procesamiento en virtud de QGIS?

5voto

¿Qué tipo de tareas se refiere?

Yo uso la siguiente clase estática para el benchmark de mi código.

He diseñado para ser estática para que yo pueda llamar la start/stop/mostrar métodos donde se necesita sin tener que preocuparse acerca de pasar referencias para el Temporizador de ida y vuelta.

Los parámetros opcionales me permite tener varias abiertas a la vez, todos los valores que va a hacer, pero los nombres más bonito.

A veces es necesario crear un stub método que se conecta a una señal para llamar a estos métodos en el momento adecuado, pero sin saber más acerca de lo que usted está contando su difícil ser específico.

from PyQt4.QtGui import *
from datetime import datetime

class Timer():
  startTimes=dict()
  stopTimes=dict()

  @staticmethod
  def start(key = 0):
    Timer.startTimes[key] = datetime.now()
    Timer.stopTimes[key] = None

  @staticmethod
  def stop(key = 0):
    Timer.stopTimes[key] = datetime.now()

  @staticmethod
  def show(key = 0):
    if key in Timer.startTimes:
      if Timer.startTimes[key] is not None:
        if key in Timer.stopTimes:
          if Timer.stopTimes[key] is not None:
            delta = Timer.stopTimes[key] - Timer.startTimes[key]
            QMessageBox.information(None,"Timer: " + str(key), str(delta))

3voto

texai Puntos 178

usted puede usar python timeit función para la prueba.

import timeit

def myfunction():
    try:
       #do something
    except AttributeError:
       pass

print timeit.timeit('testfunc(), 'from __main__ import myfunction as testfunc')

>>0.34454334343 

espero te sirva de ayuda....

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X