I have a more "big-picture" question, if you can indulge me. Suppose 10 controls all register for a certain event. When the event-triggering action occurs, does C++ issue 10 parallel calls to the LUA VM, or does it just send the event to LUA which distributes it to the 10 registered controls? It sounds to me like what you are saying is that the C-side filtering would allow us to reduce the number of calls to the VM, so I'm guessing it's parallel threads. Given the amount of filtering that I do in FTC alone I could easily see how this could have a performance impact. I filter out maybe 7/10 events that I am registered for.
|
For each event registered we invoke the supplied lua closure and then return back to C++.