Difference between revisions of "Collectgarbage"
From GiderosMobile
(added 1 example case) |
|||
| 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. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
<source lang="lua"> | <source lang="lua"> | ||
collectgarbage(opt,arg) | collectgarbage(opt,arg) | ||
</source> | </source> | ||
| − | === | + | 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''' | ||
| + | <source lang="lua"> | ||
| + | collectgarbage("setstepmul",1000) | ||
| + | collectgarbage() | ||
| + | </source> | ||
{{(global)}} | {{(global)}} | ||
Revision as of 03:39, 6 March 2021
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()