settings.cacheInterval ms (default 100) and sends changes to every resource. Reading a value is a table lookup: never start your own polling loop for these.
Gettakes aUgLib.Enums.CacheKey.Oncallshandler(value, oldValue)when the key changes. It raises forCoordsandHeading, which change every frame. A failing handler is logged and others still run.
Example
client.lua