0

我为 pvpython 编写了一个脚本来将一批 vtk 文件转换为二进制 vtu 文件。

import sys
from paraview.simple import *

print 'Number of files to be converted:', len(sys.argv) - 1    
for x in range(1, len(sys.argv)):        
    inputFile = str(sys.argv[x])
    outputFile = inputFile[:-1] + 'u'
    print x,': Converting ', inputFile, '  ->  ', outputFile
    r = LegacyVTKReader( FileNames= inputFile )
    w = XMLUnstructuredGridWriter()
    w.FileName = outputFile
    w.UpdatePipeline()   

我在一个包含大约 2000 个 vtk 文件的文件夹中运行它:

  pvpython conversion.py *.vtk

一段时间后,我的系统内存不足。

这种泄漏是从哪里来的?

我还是 python 的新手。我是否必须在每个循环结束时手动删除变量?

4

1 回答 1

1

尝试使用Delete通话。例如

...
w.UpdatePipeline()
Delete(w)
Delete(r)
于 2014-10-22T18:44:51.843 回答