Callbacks: Difference between revisions

39 bytes added ,  20 February 2016
no edit summary
No edit summary
No edit summary
Line 2: Line 2:


{{Main article|Howto:Troubleshooting Nasal Callbacks}}
{{Main article|Howto:Troubleshooting Nasal Callbacks}}
{{Caution|Improper use of timers and listeners is one of the most common causes for FlightGear performance issues, because function callbacks (code) may be registered to be triggered/executed more often than required, this problem is not specific to [[Nasal]] code written  by aircraft developers, but also C++ code written by FlightGear core developers, it's been the source of major resource leaks in FlightGear, causing severe stuttering and performance degradation over time.}}
{{Caution|Improper use of timers and listeners is one of the most common causes for FlightGear performance issues, because function callbacks (code) may be registered to be triggered/executed more often than required (potentially, several times per frame), this problem is not specific to [[Nasal]] code written  by aircraft developers, but also C++ code written by FlightGear core developers, it's been the source of major resource leaks in FlightGear, causing severe stuttering and performance degradation over time.}}


The one thing that both timers and listeners have in common is that they're event handlers, i.e. mechanisms that allow custom code to be executed whenever a certain event is triggered, such as a configurable timer expiring and/or a property being updated/modified.
The one thing that both timers and listeners have in common is that they're event handlers, i.e. mechanisms that allow custom code to be executed whenever a certain event is triggered, such as a configurable timer expiring and/or a property being updated/modified.