问题描述
在执行w1_th
和w2_th
之后,w1_th.join()
和w1_th.join()
会释放RAM资源吗?我有一个结构相似的复杂脚本,每个while循环的RAM使用率似乎都在增加。换句话说,我想确保循环结束后释放RAM资源。
from multiprocessing import Event,Lock
from threading import Thread
def worker(**kwargs):
# do some work and save output to some (eg .csv) file
def topmethod(**kwargs):
signal_to_stop.set = kwargs['signal_to_stop']
while not signal_to_stop.set():
# worker 1
w1_th = Thread(target=worker,daemon=False,kwargs={'foo':1})
w1_th.start()
w2_th = Thread(target=worker,kwargs={'foo':2})
w2_th.start()
w1_th.join()
w2_th.join()
if __name__ == "__main__":
signal_to_stop = Event()
top_th = Thread(target=topmethod,kwargs={'signal_to_stop':signal_to_stop})
top_th.start()
try:
top_th.join()
except KeyboardInterrupt:
signal_to_stop.set()
print("Ending program")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)