Я пишу интерпретатор бизнес-логики, который в большинстве случаев будет постоянным неизменяемым пакетом модулей и пакетов python.Можно перекомпилировать все во время выполнения с некоторыми изменениями.Итак, я заглянул в профиль и увидел, что большую часть времени на простой пример кода (например, result = 1+1
) тратится на метод PythonContext.Compile .Это в основном 98% времени, что очень печально.
Можно ли кешировать результат метода компиляции?Если я кеширую модули, можно ли по-прежнему пропускать разные области?