Python Glossary English

Python 3.4+tracemallocпонятие

tracemalloc.Snapshot

снимки

Снимок трасс выделений памяти: группирует их в статистику, сравнивается с другим снимком, фильтруется и сохраняется в файл.

Синтаксис

snapshot.statistics(key_type, cumulative=False); snapshot.compare_to(old, key_type)

Основные методы: statistics(key_type) — группировка по 'filename', 'lineno' или 'traceback'; compare_to(old, key_type) — разность со старым снимком; filter_traces(filters) — НОВЫЙ снимок, исходный не меняется. Неверный key_type ('line') даёт ValueError. dump()/load() сохраняют снимок через pickle — load() доверяет файлу, поэтому чужие снимки не загружают.

Примеры

import tracemalloc
tracemalloc.start()
snap = tracemalloc.take_snapshot()
try:
    snap.statistics('line')
except ValueError as e:
    print(e)  # → unknown key_type: 'line'
snap.dump('snap.bin')
again = tracemalloc.Snapshot.load('snap.bin')
print(len(again.traces) == len(snap.traces))  # → True
tracemalloc.stop()

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности