Я играл с декоратором времени для моего приложения pylons, чтобы предоставлять информацию о времени полета для определенных функций. Я сделал это, создав декоратор и просто привязав его к любой функции в контроллере, который я хочу выполнить по времени.
Было указано, однако, что декораторы могут добавить к вызову достаточное количество накладных расходов и что они работают на 2-3 раза медленнее, чем некорректированная функция.
Во-первых, я ожидал бы, что выполнение декорированной функции займет больше времени, чем неупорядоченный, но я ожидаю, что накладные расходы будут в тысячные доли секунды и будут незначительными по сравнению с вызовом вставки SQL. Сам декоратор выполняет простые простые вычисления времени, используя time.time() и некоторую очень простую агрегацию.
Делают ли декораторы значительные накладные расходы на систему? Я не могу найти ничего, чтобы поддержать это.