Dis
Теги: tests
Модуль dis предоставляет инструменты исследования байт-кода python. Наиболее полезно это для обнаружения состояния “гонки” в многопоточных процессах.
Дизасемблирование модуля не включает автоматический рекурсивный вход в функции. При дизассемблировании модуля будет получена операция загрузки кода функции и его последующего преобразования, но не тело функции. Чтобы заглянуть внутрь, необходимо передать тело функции в dis()
Подробнее об анализе функций тут
Дизасемблирование класса приводит к поочередному дизасемблированию всех методов.
Другие варианты использования:
- дизасмеблирование исходного кода
- дизассемблирование в процессе отладки (если не передавать аргументы,
dis()
найдет исключение и дизасемблирует верхний кадр. В этом случае стрелкой-->
будет размечено место возникновения ошибки) - анализ производительности циклов
- исследование производительности скомпилированного кода
Смотри еще: