Я загружаю много данных в python 2.7.15rc1
, что почти заполняет всю память, которая есть у меня в компьютере. Я пытался удалить это из памяти, вызывая del
или используя gc
, и это было мое окончательное решение, переместив все в main
, поскольку, насколько я знаю, функция должна очищаться после себя.
if __name__ == "__main__":
main(args)
gc.collect()
print("sleeping")
time.sleep(120)
subprocess.call(["ls"])
К сожалению, на самом деле я сталкиваюсь с тем, что когда я нажимаю sleep
, используемая память остается прежней. Это вызывает у меня проблемы, потому что после этого я хочу вызвать subprocess
, что не удается, потому что он не может выделить достаточно памяти (насколько я знаю, subprocess
пытается выделить то же количество, которое уже выделено, или что-то еще вот так).
Кто-нибудь знает, что здесь происходит и что я могу с этим сделать?