Increase gc-cons-percentage in -batch Emacs
* doc/lispref/os.texi (Batch Mode): Document it. * src/emacs.c (main): Use a gc-cons-percentage of 1.0 in noninteractive Emacsen.
This commit is contained in:
parent
0939465300
commit
73a384a986
3 changed files with 20 additions and 0 deletions
|
@ -2738,6 +2738,12 @@ if it is non-@code{nil}; this can be overridden by binding
|
|||
@code{coding-system-for-write} to a coding system of you choice
|
||||
(@pxref{Explicit Encoding}).
|
||||
|
||||
In batch mode, Emacs will adjust the @code{gc-cons-threshold} variable
|
||||
up from a default of @samp{0.1} to @samp{1.0}. Batch jobs that are
|
||||
supposed to run for a long time should adjust the limit back down
|
||||
again, because this means that less garbage collection will be
|
||||
performed by default (and more memory consumed).
|
||||
|
||||
@defvar noninteractive
|
||||
This variable is non-@code{nil} when Emacs is running in batch mode.
|
||||
@end defvar
|
||||
|
|
8
etc/NEWS
8
etc/NEWS
|
@ -116,6 +116,14 @@ Emacs Sessions" node in the Emacs manual for more details.
|
|||
|
||||
* Startup Changes in Emacs 29.1
|
||||
|
||||
+++
|
||||
** -batch and -script now adjusts the garbage collection levels.
|
||||
These switches now set 'gc-cons-percentage' to 1.0 (up from the
|
||||
default of 0.1). This means that batch processes will typically use
|
||||
more memory than before, but use less time doing garbage collection.
|
||||
Batch jobs that are supposed to run for a long time should adjust the
|
||||
limit back down again.
|
||||
|
||||
+++
|
||||
** Emacs can now be used more easily in an executable script.
|
||||
If you start an executable script with
|
||||
|
|
|
@ -1944,6 +1944,12 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem
|
|||
if (!initialized)
|
||||
syms_of_comp ();
|
||||
|
||||
/* Do less garbage collection in batch mode (since these tend to be
|
||||
more short-lived, and the memory is returned to the OS on exit
|
||||
anyway). */
|
||||
if (noninteractive)
|
||||
Vgc_cons_percentage = make_float (1.0);
|
||||
|
||||
no_loadup
|
||||
= argmatch (argv, argc, "-nl", "--no-loadup", 6, NULL, &skip_args);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue