Утечка памяти с полки

Я использую полку для хранения данных, в основном меток времени, которые я хочу быстро получить.

Я заполнил свою полку 40000 случайным ключом, чтобы посмотреть, как это происходит.

dbfs = shelve.open(filePath)
for i in range(0, 40000):
    key = "OD452_TP3_{}".format(i)
    dbfs[key] = datetime.datetime.now()
dbfs.close()

Это дает мне файл около 6 месяцев:

5971968 May 24 16:06 dbfs.bin

Затем я удаляю все в файле:

dbfs = shelve.open(filePath)
for key in dbfs:
    del dbfs[key]
dbfs.close()

И файл не вернулся к нулю, а стал больше:

6606848 May 24 16:07 dbfs.bin

Я продолжал повторять одну и ту же операцию, и я вижу то же самое поведение. Память никогда не освобождается, и когда я удаляю все записи, я могу использовать дополнительно около 10% памяти...

Я собирался отложить все по моей платформе, чтобы управлять меткой времени, но у меня не может быть такого поведения.

Я делаю что-то неправильно?

Julien

0 ответов

Другие вопросы по тегам