Difference between revisions of "Collectgarbage"
From GiderosMobile
m (Text replacement - "</source>" to "</syntaxhighlight>") |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | + | '''Available since:''' Gideros 2011.6<br/> | |
− | ''' | + | '''Class:''' [[(global)]]<br/> |
− | ''' | ||
− | === | + | === Description === |
− | + | This function is a generic interface to the garbage collector. | |
− | + | <syntaxhighlight lang="lua"> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
collectgarbage(opt,arg) | collectgarbage(opt,arg) | ||
− | </ | + | </syntaxhighlight> |
− | === | + | It performs different functions according to its first argument, opt: |
− | '''opt''': (string) | + | *"stop": stops the garbage collector |
− | '''arg''': (varies) | + | *"restart": restarts the garbage collector |
+ | *"collect": performs a full garbage-collection cycle | ||
+ | *"count": returns the total memory in use by Lua (in Kbytes) | ||
+ | *"step": performs a garbage-collection step. The step "size" is controlled by arg (larger values mean more steps) in a non-specified way. If you want to control the step size you must experimentally tune the value of arg. Returns true if the step finished a collection cycle | ||
+ | *"setpause": sets arg as the new value for the pause of the collector. Returns the previous value for pause | ||
+ | *"setstepmul": sets arg as the new value for the step multiplier of the collector. Returns the previous value for step | ||
+ | |||
+ | === Parameters === | ||
+ | '''opt''': (string) command for garbage collector mechanism<br/> | ||
+ | '''arg''': (varies) additional parameters for command '''optional'''<br/> | ||
+ | |||
+ | === Example === | ||
+ | '''Takes over automatic garbage collection, do it in small steps. Increase/decrease the amount depending on your game''' | ||
+ | <syntaxhighlight lang="lua"> | ||
+ | collectgarbage("setstepmul",1000) | ||
+ | collectgarbage() | ||
+ | </syntaxhighlight> | ||
{{(global)}} | {{(global)}} |
Latest revision as of 14:26, 13 July 2023
Available since: Gideros 2011.6
Class: (global)
Description
This function is a generic interface to the garbage collector.
collectgarbage(opt,arg)
It performs different functions according to its first argument, opt:
- "stop": stops the garbage collector
- "restart": restarts the garbage collector
- "collect": performs a full garbage-collection cycle
- "count": returns the total memory in use by Lua (in Kbytes)
- "step": performs a garbage-collection step. The step "size" is controlled by arg (larger values mean more steps) in a non-specified way. If you want to control the step size you must experimentally tune the value of arg. Returns true if the step finished a collection cycle
- "setpause": sets arg as the new value for the pause of the collector. Returns the previous value for pause
- "setstepmul": sets arg as the new value for the step multiplier of the collector. Returns the previous value for step
Parameters
opt: (string) command for garbage collector mechanism
arg: (varies) additional parameters for command optional
Example
Takes over automatic garbage collection, do it in small steps. Increase/decrease the amount depending on your game
collectgarbage("setstepmul",1000)
collectgarbage()