Sto cercando di profilare un metodo di istanza, così ho fatto qualcosa di simile:Valore restituito durante l'utilizzo 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()
Ma ora problemi sorgono quando voglio "metodo" per restituire un valore che viene calcolato da "method_actual". Non voglio davvero chiamare "method_actual" due volte.
C'è un altro modo, qualcosa che può essere thread sicuro? (Nella mia applicazione, i dati vengono salvati Cprofile file di dati di nome da uno dei args, in modo che non vengono rovinati ed io li possono combinare in seguito.)
Brillante! Questo sembra perfetto - ma cosa è "datafn"? –
@JonathanHartley - Il nome file per il file di dati IIRC. – detly
Ah, grazie. Pensavo che "fn" significasse funzione, non nomefile. –