diff options
Diffstat (limited to 'manual')
| -rw-r--r-- | manual/manual.of | 92 |
1 files changed, 61 insertions, 31 deletions
diff --git a/manual/manual.of b/manual/manual.of index e6a3cd9e..92d408e5 100644 --- a/manual/manual.of +++ b/manual/manual.of | |||
| @@ -681,12 +681,10 @@ effectively producing a non-incremental, stop-the-world collector. | |||
| 681 | The garbage-collector step size controls the | 681 | The garbage-collector step size controls the |
| 682 | size of each incremental step, | 682 | size of each incremental step, |
| 683 | specifically how many objects the interpreter creates | 683 | specifically how many objects the interpreter creates |
| 684 | before performing a step. | 684 | before performing a step: |
| 685 | This parameter is logarithmic: | 685 | A value of @M{n} means the interpreter will create |
| 686 | A value of @M{n} means the interpreter will create @M{2@sp{n}} | 686 | approximately @M{n} objects between steps. |
| 687 | objects between steps. | 687 | The default value is 250. |
| 688 | The default value is 8, | ||
| 689 | which means steps of approximately @N{256 objects}. | ||
| 690 | 688 | ||
| 691 | } | 689 | } |
| 692 | 690 | ||
| @@ -728,11 +726,13 @@ The default value is 100. | |||
| 728 | The major-minor multiplier controls the shift back to minor collections. | 726 | The major-minor multiplier controls the shift back to minor collections. |
| 729 | For a multiplier @M{x}, | 727 | For a multiplier @M{x}, |
| 730 | the collector will shift back to minor collections | 728 | the collector will shift back to minor collections |
| 731 | after a major collection collects at least @M{x%} of the allocated objects. | 729 | after a major collection collects at least @M{x%} |
| 730 | of the objects allocated during the last cycle. | ||
| 731 | |||
| 732 | In particular, for a multiplier of 0, | 732 | In particular, for a multiplier of 0, |
| 733 | the collector will immediately shift back to minor collections | 733 | the collector will immediately shift back to minor collections |
| 734 | after doing one cycle of major collections. | 734 | after doing one cycle of major collections. |
| 735 | The default value is 20. | 735 | The default value is 80. |
| 736 | 736 | ||
| 737 | } | 737 | } |
| 738 | 738 | ||
| @@ -3336,19 +3336,32 @@ Returns a boolean that tells whether the collector is running | |||
| 3336 | (i.e., not stopped). | 3336 | (i.e., not stopped). |
| 3337 | } | 3337 | } |
| 3338 | 3338 | ||
| 3339 | @item{@defid{LUA_GCINC} (int pause, int stepmul, int stepsize)| | 3339 | @item{@defid{LUA_GCINC}| |
| 3340 | Changes the collector to incremental mode | 3340 | Changes the collector to incremental mode. |
| 3341 | with the given parameters @see{incmode}. | ||
| 3342 | Returns the previous mode (@id{LUA_GCGEN} or @id{LUA_GCINC}). | 3341 | Returns the previous mode (@id{LUA_GCGEN} or @id{LUA_GCINC}). |
| 3343 | } | 3342 | } |
| 3344 | 3343 | ||
| 3345 | @item{@defid{LUA_GCGEN} (int minormul, int minormajor, int majorminor)| | 3344 | @item{@defid{LUA_GCGEN}| |
| 3346 | Changes the collector to generational mode | 3345 | Changes the collector to generational mode. |
| 3347 | with the given parameters @see{genmode}. | ||
| 3348 | Returns the previous mode (@id{LUA_GCGEN} or @id{LUA_GCINC}). | 3346 | Returns the previous mode (@id{LUA_GCGEN} or @id{LUA_GCINC}). |
| 3349 | } | 3347 | } |
| 3350 | 3348 | ||
| 3349 | @item{@defid{LUA_GCSETPARAM} (int param, int value)| | ||
| 3350 | Changes the values of a parameter of the collector and returns | ||
| 3351 | the previous value of that parameter. | ||
| 3352 | The argument @id{param} must have one of the following values: | ||
| 3353 | @description{ | ||
| 3354 | @item{@defid{LUA_GCPMINORMUL}| The minor multiplier. } | ||
| 3355 | @item{@defid{LUA_GCPMAJORMINOR}| The major-minor multiplier. } | ||
| 3356 | @item{@defid{LUA_GCPMINORMAJOR}| The minor-major multiplier. } | ||
| 3357 | @item{@defid{LUA_GCPPAUSE}| The garbage-collector pause. } | ||
| 3358 | @item{@defid{LUA_GCPSTEPMUL}| The step multiplier. } | ||
| 3359 | @item{@defid{LUA_GCPSTEPSIZE}| The step size. } | ||
| 3360 | } | ||
| 3361 | } | ||
| 3362 | |||
| 3351 | } | 3363 | } |
| 3364 | |||
| 3352 | For more details about these options, | 3365 | For more details about these options, |
| 3353 | see @Lid{collectgarbage}. | 3366 | see @Lid{collectgarbage}. |
| 3354 | 3367 | ||
| @@ -6347,20 +6360,35 @@ Returns a boolean that tells whether the collector is running | |||
| 6347 | } | 6360 | } |
| 6348 | 6361 | ||
| 6349 | @item{@St{incremental}| | 6362 | @item{@St{incremental}| |
| 6350 | Change the collector mode to incremental. | 6363 | Changes the collector mode to incremental and returns the previous mode. |
| 6351 | This option can be followed by three numbers: | ||
| 6352 | the garbage-collector pause, | ||
| 6353 | the step multiplier, | ||
| 6354 | and the step size @see{incmode}. | ||
| 6355 | A -1 or absent value means to not change that value. | ||
| 6356 | } | 6364 | } |
| 6357 | 6365 | ||
| 6358 | @item{@St{generational}| | 6366 | @item{@St{generational}| |
| 6359 | Change the collector mode to generational. | 6367 | Changes the collector mode to generational and returns the previous mode. |
| 6360 | This option can be followed by three numbers: | 6368 | } |
| 6361 | the garbage-collector minor multiplier, | 6369 | |
| 6362 | the minor-major multiplier, and the major-minor multiplier @see{genmode}. | 6370 | @item{@St{setparam}| |
| 6363 | A -1 or absent value means to not change that value. | 6371 | Changes the values of a parameter of the collector and returns |
| 6372 | the previous value of that parameter. | ||
| 6373 | This option must be followed by two extra arguments: | ||
| 6374 | The name of the parameter being changed (a string) | ||
| 6375 | and the new value for that parameter (an integer). | ||
| 6376 | The argument @id{param} must have one of the following values: | ||
| 6377 | @description{ | ||
| 6378 | @item{@St{minormul}| The minor multiplier. } | ||
| 6379 | @item{@St{majorminor}| The major-minor multiplier. } | ||
| 6380 | @item{@St{minormajor}| The minor-major multiplier. } | ||
| 6381 | @item{@St{pause}| The garbage-collector pause. } | ||
| 6382 | @item{@St{stepmul}| The step multiplier. } | ||
| 6383 | @item{@St{stepsize}| The step size. } | ||
| 6384 | } | ||
| 6385 | To be able to divide by 100 | ||
| 6386 | (as most parameters are given as percentages) | ||
| 6387 | without using floating-point arithmetic, | ||
| 6388 | Lua stores these parameters encoded. | ||
| 6389 | This encoding approximates the real value; | ||
| 6390 | so, the value returned as the previous value may not be | ||
| 6391 | equal to the last value set. | ||
| 6364 | } | 6392 | } |
| 6365 | 6393 | ||
| 6366 | } | 6394 | } |
| @@ -9249,9 +9277,10 @@ declare a local variable with the same name in the loop body. | |||
| 9249 | @itemize{ | 9277 | @itemize{ |
| 9250 | 9278 | ||
| 9251 | @item{ | 9279 | @item{ |
| 9252 | There were several changes in the parameters | 9280 | Parameters for the garbage collection are not set |
| 9253 | for the options @St{incremental} and @St{generational} | 9281 | with the options @St{incremental} and @St{generational}; |
| 9254 | of the function @Lid{collectgarbage}. | 9282 | instead, there is a new option @St{setparam} to that end. |
| 9283 | Moreover, there were some changes in the parameters themselves. | ||
| 9255 | } | 9284 | } |
| 9256 | 9285 | ||
| 9257 | } | 9286 | } |
| @@ -9277,9 +9306,10 @@ to signal the end of the dump. | |||
| 9277 | } | 9306 | } |
| 9278 | 9307 | ||
| 9279 | @item{ | 9308 | @item{ |
| 9280 | There were several changes in the parameters | 9309 | Parameters for the garbage collection are not set |
| 9281 | for the options @Lid{LUA_GCINC} and @Lid{LUA_GCGEN} | 9310 | with the options @Lid{LUA_GCINC} and @Lid{LUA_GCGEN}; |
| 9282 | of the function @Lid{lua_gc}. | 9311 | instead, there is a new option @Lid{LUA_GCSETPARAM} to that end. |
| 9312 | Moreover, there were some changes in the parameters themselves. | ||
| 9283 | } | 9313 | } |
| 9284 | 9314 | ||
| 9285 | } | 9315 | } |
