假设您执行以下操作:
dom = ElementTree()
dom.parse(some_file_path)
我想记录这个dom现在在我的进程中使用的大致内存量。我不需要精确的东西,粗糙的东西就可以了。在
我不认为我能从源XML文件的大小中得到它。我有一个500KB的文件,在加载后,它似乎增加了大约5MB的python进程的内存使用量,如上面的例子所示。在
我查看了elementtreeapi,没有看到任何API提供此信息。有没有人知道在解析/加载XML文件之后ElementTree实例使用了多少内存?在
Tags:
实际上,您需要查找特定python对象的内存消耗。就是这样。这里它是一个
ElementTree
对象,但它可以是任何东西。在据我所知,要想省去追查python对象的内存大小,没有简单的方法。您可能会发现的一个问题是Python对象(如list和dicts)可能引用了其他Python对象(在本例中,您的大小是多少?是否包含每个对象的大小?)。有一些指针开销和与对象类型和垃圾回收相关的内部结构。最后,一些python对象具有不明显的行为。例如,在大多数情况下,列表为更多的对象预留空间;dict甚至更复杂,因为它们可以以不同的方式操作(它们对少量的键有不同的实现,有时它们会过度分配条目)。在
相关问题 更多 >
编程相关推荐