を使用している間、私はインスタンスメソッドをプロファイリングしようとしているので、私のようなものやった:戻り値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()
をしかし、今私が欲しいときに問題が計算された値を返すために、「方法」を生じ"method_actual"による。私は本当に "method_actual"を2回呼びたいとは思わない。
スレッドセーフな別の方法がありますか? (私のアプリケーションでは、cProfileデータは、引数の1で指定されたデータファイルに保存されているので、それらは上書きされませんし、私は後でそれらを組み合わせることができます。)
ブリリアント!これは完璧に見えますが、 'datafn'とは何ですか? –
@JonathanHartley - データファイルIIRCのファイル名。 – detly
ああ、ありがとう。私は 'fn'はファイル名ではなく機能を意味すると考えた。 –