If you have a case where you query information about multiple auras upon every UNIT_AURA then a cache is useful. Basically you refresh your cache once on UNIT_AURA and all your queries always hit the cache. If your cache structure is shallow enough, the table look-ups will be faster then calling UnitAura. One problem with Edik's implementation is that auras are re-iterated on cache misses and the new iteration is also a miss. If you can't trust the cache, then there is no point in it.
|