使用pvpython脚本时内存泄漏
我写了一个脚本,用于 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 还不太熟悉。难道我需要在每次循环结束时手动删除变量吗?
1 个回答
1
试着使用一个 Delete
的调用。例如:
...
w.UpdatePipeline()
Delete(w)
Delete(r)