Bonjour, je bute sur un problème assez gênant, python refuse de supprimé une variable qui prend de la place, voici mon code:
une fois p = multiprocessing.Process(target=new_window, args=(list,)) lancé, python vas copié ma variable list dans le nouveau processus, mais après ne vas pas supprimé (même manuellement avec del) cette derniere.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 from tkinter import * import multiprocessing import os def new_window(list): while True: print(list[0]) class Test: def __init__(self): def firstn(n): nums = [] for i in range(0,n): nums.append(i) return nums sum_of_first_n = firstn(2000000) self.new_window(sum_of_first_n) del sum_of_first_n print("end") def new_window(self, list): p = multiprocessing.Process(target=new_window, args=(list,)) p.start() if __name__ == '__main__': toto = Test()
Du coup je me retrouve avec 90mo de ram au lieu de seulement 45, y'a t'il une solution ?
Partager