He estado jugando con un decorador de sincronización para mi aplicación de pilones para proporcionar información de sincronización sobre la marcha para funciones específicas. Lo hice creando un decorador & simplemente adjuntándolo a cualquier función en el controlador que desee sincronizar.Cuánta sobrecarga agregan los decoradores a las llamadas a función de Python
Se ha señalado, sin embargo, que los decoradores pueden agregar una cantidad considerable de sobrecarga a la llamada, y que corren 2-3 veces más lento que una función no decorada.
En primer lugar, esperaría que la ejecución de una función decorada durara más que una sin decorar, pero esperaría que la sobrecarga en las milésimas de segundos & sea insignificante en comparación con una llamada de inserción de SQL. El decorador en sí mismo hace simples cálculos simples de tiempo usando time.time() & una agregación muy simple.
¿Los decoradores agregan una sobrecarga significativa a un sistema? No puedo encontrar nada que respalde eso.
La sobrecarga de la decoración en sí es medible, pero no cerca de 2-3x. Esto no tiene en cuenta el comportamiento de decoración, que puede consumir mucho tiempo dependiendo de lo que esté haciendo (actualizaciones de bases de datos, señales de rebote de la luna, etc.). – PaulMcG
+1 para las señales de rebote de la luna –
Del mismo modo, pero reservando +2 para futuros comentarios: "Sincrónico de la señal de la luna-rebote" – Profane