通过python进程内存使用找到内存泄漏(windows7)

时间:2015-04-27 08:32:22

标签: python-2.7 windows-7-x64

我试图通过python脚本在win7下获取python进程的内存使用情况。到目前为止,我写了一个函数来读取内存使用情况:

def analyseHostMemoryUsage(self):
    # return the memory usage of python process
    handle = win32api.OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, False, os.getpid())
    memoryUsage = GetProcessMemoryInfo(handle)['PagefileUsage']
    win32api.CloseHandle(handle)
    return memoryUsage

我在测试脚本的每次迭代后调用此函数。虽然在每次迭代中执行相同的代码,但是内存使用类型的结果是交替的(每行是1次迭代):

        Usage      diff
        24899584         -
        24862720    -36864
        24870912      8192
        24870912         0
        25182208    311296
        25182208         0
        25182208         0
        25182208         0
        25182208         0
        25182208         0
        25182208         0

我想知道这个输出。当我再次运行脚本时,我得到一个不同的输出:

        Usage      diff
        25550848         -
        24895488   -655360
        24907776     12288
        24920064     12288
        25223168    303104
        25223168         0
        25223168         0
        25223168         0
        25223168         0
        25223168         0
        25223168         0

有人可以解释一下吗?或者我读错了值('PagefileUsage')?

0 个答案:

没有答案