Python Glossary English

Python 3.12+Linuxsysфункция

sys.activate_stack_trampoline()

отладка и трассировка

Включает «трамплины» для профилировщика perf, чтобы в его отчёте были видны имена Python-функций. Только Linux, единственный бэкенд — 'perf'.

Синтаксис

sys.activate_stack_trampoline('perf')

Нужна тем, кто профилирует Python системным perf на Linux; для cProfile и обычной отладки она бесполезна. Пока трамплины включены, интерпретатор пишет файл /tmp/perf-<PID>.map и работает чуть медленнее. Тот же эффект без правки кода даёт запуск python -X perf. При включённом JIT активировать нельзя, а неизвестное имя бэкенда даёт ValueError. На Windows и macOS функции нет вовсе.

Примеры

import sys
if sys.platform == 'linux':
    try:
        sys.activate_stack_trampoline('nope')
    except ValueError as e:
        print(e)  # → invalid backend: nope
    print(sys.is_stack_trampoline_active())  # → False

См. также

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

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