WoWInterface - View Single Post - General question about performance
View Single Post
07-07-19, 02:23 AM   #2
A Pyroguard Emberseer
SDPhantom's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2006
Posts: 1,991
The global environment is basically stored in a big table. Every time you want to read from this table you perform a table indexing operation, which takes a small amount of time. However, if code is run very often (think combat log events or every frame render), you may want to shave off as much time as possible. Local variables are stored as Lua registers, which are much quicker to access than the global environment.

Note: table.wipe and others like this cause more than one indexing operation as denoted by the dot. The first is retrieving table from the global environment and the second is to index wipe from table. Creating a local reference of this saves 2 indexing operations as a result.
ESOUI AddOns | WoWInterface AddOns
"All I want is a pretty girl, a decent meal, and the right to shoot lightning at fools."
-Anders (Dragon Age: Origins - Awakening)

Last edited by SDPhantom : 07-07-19 at 02:27 AM.
  Reply With Quote