Python多处理-在进程重新启动后清除RAM

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

我正在使用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
        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()
根据调用垃圾收集器