Python多处理-在进程重新启动后清除RAM
我正在使用python多处理库实时处理大型数据集 有时我需要重新启动更改某些设置的过程 是否有可能清除存储在RAM中的数据。我看到我的RAM使用率在增长~2%/重新启动 请查找以下我的代码示例:Python多处理-在进程重新启动后清除RAM,python,multiprocessing,Python,Multiprocessing,我正在使用python多处理库实时处理大型数据集 有时我需要重新启动更改某些设置的过程 是否有可能清除存储在RAM中的数据。我看到我的RAM使用率在增长~2%/重新启动 请查找以下我的代码示例: # -*- coding: utf-8 -*- from PyQt4 import QtGui, QtCore import multiprocessing import sys def calc(q): x=5 for i in range (10): x = x+1
# -*- coding: utf-8 -*-
from PyQt4 import QtGui, QtCore
import multiprocessing
import sys
def calc(q):
x=5
for i in range (10):
x = x+1
q.put(x)
def calc_calc(quee, qq):
for u in range (10):
y = quee.get()
z = y*10
qq.put(z)
def calc_end(queee, qqq):
for w in range (10):
h = queee.get()
xy = h*10
print(xy)
qqq.put(xy)
class Window(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.button = QtGui.QPushButton('Test', self)
self.button.clicked.connect(self.handleButton)
layout = QtGui.QVBoxLayout(self)
layout.addWidget(self.button)
def handleButton(self):
p1 = multiprocessing.Process(target=calc, args=(q,))
#q = q.put(x)
p2 = multiprocessing.Process(target=calc_calc, args =(q, qq,))
#qq = qq.put(z)
p3 = multiprocessing.Process(target= calc_end, args =(qq, qqq,))
p1.start()
p2.start()
p3.start()
p1.join()
p2.join()
p3.join()
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
window = Window()
#multiprocessing queue 1
q = multiprocessing.Queue()
#multiprocessing queue 3
qq = multiprocessing.Queue()
#multiprocessing queue 3 (aktuell nicht belegt)
qqq = multiprocessing.Queue()
window.show()
sys.exit(app.exec_())
不能显式释放内存。您可以使用
gc.collect()
根据调用垃圾收集器