Estoy tratando de perfilar un método de instancia, por lo que he hecho algo como:Valor de retorno durante el uso de cprofile
import cProfile
class Test():
def __init__(self):
pass
def method(self):
cProfile.runctx("self.method_actual()", globals(), locals())
def method_actual(self):
print "Run"
if __name__ == "__main__":
Test().method()
Pero ahora surgen problemas cuando quiero "método" para devolver un valor que se calcula por "method_actual". Realmente no quiero llamar "method_actual" dos veces.
¿Hay alguna otra manera, algo que pueda ser seguro para subprocesos? (En mi aplicación, los datos cprofile se guardan en archivos de datos con nombre de uno de los argumentos, por lo que no reciben una paliza y me pueden combinarlos más tarde.)
Brilliant! Esto se ve perfecto, pero ¿qué es 'datafn'? –
@JonathanHartley - El nombre de archivo para el archivo de datos IIRC. – detly
Ah, gracias. Pensé que 'fn' significaba función, no nombre de archivo. –