J'essaie d'écrire une simple preuve de concept script sur Windows 10 qui me permet de dessiner l'absolu d'une courbe de sinus dans la fenêtre de mémoire du gestionnaire de tâches.
Mon code est le suivant :
import time
import math
import gc
import sys
x = 1
string_drawer = []
while True:
#Formula for the eqaution (sin curve)
y = (abs(math.sin(math.radians(100*x))))*512000000
print (y, type(y))
#Making y type 'int' so that it can be used to append
y = int(round(y))
print (y, type(y))
#Checking the size of string_drawer for debugging
print(sys.getsizeof(string_drawer))
#Loop used for appending
if sys.getsizeof(string_drawer) < y: #If y is bigger, find the difference and append
y = y - sys.getsizeof(string_drawer)
string_drawer.append(' ' *y)
elif sys.getsizeof(string_drawer) > y: #If y is smaller, delete the variable and make a new one
string_drawer = [] *y
else: #If y is the same size as string_drawer, do nothing
string_drawer = string_drawer
#Call the Python gerbage colector
gc.collect()
#Sleep to make sure Task Manager catches the change in RAM usage
time.sleep(0.5)
#Increment x
x += 1
print(x, type(x))
Ce que j'obtiens est le suivant :
Ce que je veux, c'est ça :
Avez-vous une idée de ce que je fais de mal ? Je pense que c'est quelque chose dans la boucle if ou quelque chose concernant le garbage collector.
Toute aide est appréciée. Merci :)