trevor Geschrieben 3. November 2016 Geschrieben 3. November 2016 While you have the hood up.... New Command : Filter Events; <OBJECT>;<OBJECT>;...... <OBJECT> Create a dictionary for each port, Set the dictionary to the list values if you receive this command. Only send events for the objects listed in the dictionary to the current port, or default to ALL if the dictionary is empty. This will significantly cut down the port traffic and make both ends more efficient. My train controller plug-in works pretty well at the moment, but will be less so if the user has a slew of other events happening from the EV code, or there is another plug-in running. Note: Certain events should not be filtered. e.g. Project Close, Load and the like. Again... IDs would be better than names as an option.
Neo Geschrieben 3. November 2016 Geschrieben 3. November 2016 Hi Trevor, filtering out events on the Studio side would currently not improve the performance, because the network interface is faster than the event management (when using localhost). This might change after the event management was optimized in a future version, but trying to synchronize a plugin to the Studio is a hard task due to the asynchronous concept of the network interface, so keep in mind that a better performance does not automatically solve all synchronization problems. Kind regards, Neo
trevor Geschrieben 3. November 2016 Autor Geschrieben 3. November 2016 5 minutes ago, Neo said: Hi Trevor, filtering out events on the Studio side would currently not improve the performance, because the network interface is faster than the event management (when using localhost). This might change after the event management was optimized in a future version, but trying to synchronize a plugin to the Studio is a hard task due to the asynchronous concept of the network interface, so keep in mind that a better performance does not automatically solve all synchronization problems. Kind regards, Neo Yes I do realize that NEO, but sending receiving and filtering through a bunch of "noise" seems counterproductive if it can be done at your end easily enough. I mean one of us has to do it.... and the CPU can only do so much...
trevor Geschrieben 3. November 2016 Autor Geschrieben 3. November 2016 And I'm certain a ContainsKey is a lot quicker than all the overhead associated with transmission and reception by the time you add in all the thread wake up latencies.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden