Index: Slim/Utils/Prefs.pm =================================================================== --- Slim/Utils/Prefs.pm (revision 4675) +++ Slim/Utils/Prefs.pm (working copy) @@ -104,6 +104,7 @@ 'coverArt' => '', 'thumbSize' => 100, 'itemsPerPass' => 5, + 'keepUnswappedInterval' => 30, 'plugins-onthefly' => 0, 'longdateFormat' => q(%A, %B |%d, %Y), 'shortdateFormat' => q(%m/%d/%Y), Index: Slim/Web/Setup.pm =================================================================== --- Slim/Web/Setup.pm (revision 4675) +++ Slim/Web/Setup.pm (working copy) @@ -2064,7 +2064,7 @@ ,'GroupOrder' => ['Default'] ,'Groups' => { 'Default' => { - 'PrefOrder' => ['lookForArtwork','itemsPerPass','prefsWriteDelay'] + 'PrefOrder' => ['lookForArtwork','itemsPerPass','prefsWriteDelay','keepUnswappedInterval'] } } ,'Prefs' => { @@ -2082,6 +2082,9 @@ 'validate' => \&validateInt ,'validateArgs' => [0,undef,1] } + ,'keepUnswappedInterval' => { + 'validate' => \&validateInt + } } } #end of setup{'performance'} hash ,'network' => { Index: slimserver.pl =================================================================== --- slimserver.pl (revision 4675) +++ slimserver.pl (working copy) @@ -1114,8 +1114,18 @@ # swapping. So try and keep our memory image in RAM and not swap out. sub keepSlimServerInMemory { - $::d_server && msg("Requesting web page to keep SlimServer unswapped.\n"); + my $interval = Slim::Utils::Prefs::get('keepUnswappedInterval'); + $interval = 30 if (!(defined($interval))); + $::d_server && msg("Requesting web page to keep SlimServer unswapped, re-request interval is $interval minutes.\n"); + + # Disabled if interval set to less than zero seconds + if ($interval <= 0) + { + $::d_server && msg("Interval is less than or equal to zero, Keeping SlimServer unswapped is disabled.\n"); + return; + } + my $url = ''; my $port = Slim::Utils::Prefs::get('httpport'); @@ -1134,8 +1144,9 @@ $http->get($url); - # Check every half hour - Slim::Utils::Timers::setTimer(0, Time::HiRes::time() + 1800, \&keepSlimServerInMemory); + # Interval is configured in minutes... + $interval = $interval * 60; + Slim::Utils::Timers::setTimer(0, Time::HiRes::time() + $interval, \&keepSlimServerInMemory); } #------------------------------------------ Index: strings.txt =================================================================== --- strings.txt (revision 4675) +++ strings.txt (working copy) @@ -5044,6 +5044,14 @@ ES Esta configuración determina que tan seguido se graban en disco las preferencias. Poner en 0 para escribir cada cambio en el momento, o valores mayores para agrupar los cambios y grabarlos después del número indicado de segundos. ZH_CN 这个设置决定了参数选择纪录到硬盘的频繁度。以0为值则表示将每一个更动即刻纪录到硬盘。较高的值则表示在该指定的秒数内累积多项更动以便到时一起纪录到硬盘上。 +SETUP_KEEPUNSWAPPEDINTERVAL + DE Aufweckintervall + EN Keep Unswapped interval + +SETUP_KEEPUNSWAPPEDINTERVAL_DESC + DE Wenn der Server längere Zeit nicht benutzt wird wird es vom Betriebssystem ausgelagert. Diese Einstellung definiert, nach wievielen Minuten der Server seine Startseite lädt, damit es im Hauptspreicher bleibt. Auf 0 setzen damit dieses Verhalten abgeschaltet wird. + EN If the server is unused for some time, the operating system puts it into swap space. This setting determines after how many minutes the server reloads its main page to keep the server process in main memory. Set to 0 to disable the reloading. + SETUP_LONGDATEFORMAT CZ Formát datumu douhý DE Format des langen Datums