You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, polling will occur after all logic checks have been done, + a sleep time of 16 milliseconds (or whatever the update frequency is set to). This makes the polling rate dependent on how fast the code can work through the previous ram dump, which in turn makes the rate inconsistent and will also vary depending on the power of the hardware it's running on.
One solution is to make the ram fetching run in a separate thread that pushes responses to a queue that the 'parser' thread will consume. Separating the fetching from the parsing will probably make the code a bit cleaner as well.
Also, the time the thread sleeps should not be a set value, but rather something along the lines of update_frequency - time_elapsed_since_previous_poll
The text was updated successfully, but these errors were encountered:
Would probably be a good idea to let the fetch thread supply timestamps to the parser as well, so that timestamp reflects 'time of snes read' instead of 'time when parser thread evaluated an event/check/transition to have triggered'.
Right now, polling will occur after all logic checks have been done, + a sleep time of 16 milliseconds (or whatever the update frequency is set to). This makes the polling rate dependent on how fast the code can work through the previous ram dump, which in turn makes the rate inconsistent and will also vary depending on the power of the hardware it's running on.
One solution is to make the ram fetching run in a separate thread that pushes responses to a queue that the 'parser' thread will consume. Separating the fetching from the parsing will probably make the code a bit cleaner as well.
Also, the time the thread sleeps should not be a set value, but rather something along the lines of
update_frequency - time_elapsed_since_previous_poll
The text was updated successfully, but these errors were encountered: