我想與Heapy配置扭曲的python代碼。例如(僞代碼):使用Heapy的內存配置文件瀏覽器與Twisted.web
from twisted.web import resource, server
from twisted.internet import reactor
from guppy import hpy
class RootResource(resource.Resource):
render_GET(self, path, request):
return "Hello World"
if __name__ == '__main__':
h = hpy()
port = 8080
site = server.Site(RootResource(mq))
reactor.listenTCP(port, site)
reactor.run()
什麼我需要做的,以查看在profile browser Heapy輪廓的結果嗎?
你在哪裏實例化h?或者更具體地說,如果我使用twistd運行它,那麼我會在何處實例化h? – 2013-09-06 07:20:02
我剛剛從問題中重新使用了'h'變量 - 其中所有的代碼都在同一個模塊中,'h'是在反應堆啓動之前全局實例化的。這對於真實世界的代碼當然不是理想的實踐。您可能想要在應用程序中的某個重要類的__init__中實例化'hpy'並將其保存爲屬性。另一個想法是在tac文件中實例化它並將其附加到應用程序對象。 – 2013-09-06 11:02:23