标签: python python-c-api python-internals
我正在使用python memory profiler,我用以下方法收集python对象的大小:
sum(map(sys.getsizeof, gc.get_objects()))
这是代码中最慢的部分 - 尤其是gc.get_objects - 因此我决定加快速度并将其重写为c扩展。问题是python c API无法访问gc.get_objects使用的gc模块内部数据。
gc.get_objects
是否可以使用c API迭代所有对象,而无需调用昂贵的gc.get_objects?