mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2024-12-21 08:09:35 +08:00
Merge pull request #10844 from Chocobo1/cache
Remove upper limit of disk cache setting
This commit is contained in:
commit
8d9b4a19bd
@ -2840,22 +2840,19 @@ void Session::setCheckingMemUsage(int size)
|
||||
|
||||
int Session::diskCacheSize() const
|
||||
{
|
||||
int size = m_diskCacheSize;
|
||||
// These macros may not be available on compilers other than MSVC and GCC
|
||||
#ifdef QBT_APP_64BIT
|
||||
size = qMin(size, 4096); // 4GiB
|
||||
return qMin(m_diskCacheSize.value(), 33554431); // 32768GiB
|
||||
#else
|
||||
// When build as 32bit binary, set the maximum at less than 2GB to prevent crashes
|
||||
// allocate 1536MiB and leave 512MiB to the rest of program data in RAM
|
||||
size = qMin(size, 1536);
|
||||
return qMin(m_diskCacheSize.value(), 1536);
|
||||
#endif
|
||||
return size;
|
||||
}
|
||||
|
||||
void Session::setDiskCacheSize(int size)
|
||||
{
|
||||
#ifdef QBT_APP_64BIT
|
||||
size = qMin(size, 4096); // 4GiB
|
||||
size = qMin(size, 33554431); // 32768GiB
|
||||
#else
|
||||
// allocate 1536MiB and leave 512MiB to the rest of program data in RAM
|
||||
size = qMin(size, 1536);
|
||||
|
@ -28,7 +28,6 @@
|
||||
|
||||
#include "random.h"
|
||||
|
||||
#include <limits>
|
||||
#include <random>
|
||||
|
||||
#include <QtGlobal>
|
||||
|
@ -30,12 +30,13 @@
|
||||
#define UTILS_RANDOM_H
|
||||
|
||||
#include <cstdint>
|
||||
#include <limits>
|
||||
|
||||
namespace Utils
|
||||
{
|
||||
namespace Random
|
||||
{
|
||||
uint32_t rand(uint32_t min = 0, uint32_t max = UINT32_MAX);
|
||||
uint32_t rand(uint32_t min = 0, uint32_t max = std::numeric_limits<uint32_t>::max());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -342,9 +342,8 @@ void AdvancedSettings::loadAdvancedSettings()
|
||||
// Disk write cache
|
||||
spinBoxCache.setMinimum(-1);
|
||||
// When build as 32bit binary, set the maximum at less than 2GB to prevent crashes.
|
||||
// These macros may not be available on compilers other than MSVC and GCC
|
||||
#ifdef QBT_APP_64BIT
|
||||
spinBoxCache.setMaximum(4096);
|
||||
spinBoxCache.setMaximum(33554431); // 32768GiB
|
||||
#else
|
||||
// allocate 1536MiB and leave 512MiB to the rest of program data in RAM
|
||||
spinBoxCache.setMaximum(1536);
|
||||
@ -354,8 +353,8 @@ void AdvancedSettings::loadAdvancedSettings()
|
||||
addRow(DISK_CACHE, (tr("Disk cache") + ' ' + makeLink("https://www.libtorrent.org/reference-Settings.html#cache_size", "(?)"))
|
||||
, &spinBoxCache);
|
||||
// Disk cache expiry
|
||||
spinBoxCacheTTL.setMinimum(15);
|
||||
spinBoxCacheTTL.setMaximum(600);
|
||||
spinBoxCacheTTL.setMinimum(1);
|
||||
spinBoxCacheTTL.setMaximum(std::numeric_limits<int>::max());
|
||||
spinBoxCacheTTL.setValue(session->diskCacheTTL());
|
||||
spinBoxCacheTTL.setSuffix(tr(" s", " seconds"));
|
||||
addRow(DISK_CACHE_TTL, (tr("Disk cache expiry interval") + ' ' + makeLink("https://www.libtorrent.org/reference-Settings.html#cache_expiry", "(?)"))
|
||||
@ -378,19 +377,19 @@ void AdvancedSettings::loadAdvancedSettings()
|
||||
, &checkBoxSuggestMode);
|
||||
// Send buffer watermark
|
||||
spinBoxSendBufferWatermark.setMinimum(1);
|
||||
spinBoxSendBufferWatermark.setMaximum(INT_MAX);
|
||||
spinBoxSendBufferWatermark.setMaximum(std::numeric_limits<int>::max());
|
||||
spinBoxSendBufferWatermark.setSuffix(tr(" KiB"));
|
||||
spinBoxSendBufferWatermark.setValue(session->sendBufferWatermark());
|
||||
addRow(SEND_BUF_WATERMARK, (tr("Send buffer watermark") + ' ' + makeLink("https://www.libtorrent.org/reference-Settings.html#send_buffer_watermark", "(?)"))
|
||||
, &spinBoxSendBufferWatermark);
|
||||
spinBoxSendBufferLowWatermark.setMinimum(1);
|
||||
spinBoxSendBufferLowWatermark.setMaximum(INT_MAX);
|
||||
spinBoxSendBufferLowWatermark.setMaximum(std::numeric_limits<int>::max());
|
||||
spinBoxSendBufferLowWatermark.setSuffix(tr(" KiB"));
|
||||
spinBoxSendBufferLowWatermark.setValue(session->sendBufferLowWatermark());
|
||||
addRow(SEND_BUF_LOW_WATERMARK, (tr("Send buffer low watermark") + ' ' + makeLink("https://www.libtorrent.org/reference-Settings.html#send_buffer_low_watermark", "(?)"))
|
||||
, &spinBoxSendBufferLowWatermark);
|
||||
spinBoxSendBufferWatermarkFactor.setMinimum(1);
|
||||
spinBoxSendBufferWatermarkFactor.setMaximum(INT_MAX);
|
||||
spinBoxSendBufferWatermarkFactor.setMaximum(std::numeric_limits<int>::max());
|
||||
spinBoxSendBufferWatermarkFactor.setSuffix(" %");
|
||||
spinBoxSendBufferWatermarkFactor.setValue(session->sendBufferWatermarkFactor());
|
||||
addRow(SEND_BUF_WATERMARK_FACTOR, (tr("Send buffer watermark factor") + ' ' + makeLink("https://www.libtorrent.org/reference-Settings.html#send_buffer_watermark_factor", "(?)"))
|
||||
|
@ -28,6 +28,8 @@
|
||||
|
||||
#include "searchcontroller.h"
|
||||
|
||||
#include <limits>
|
||||
|
||||
#include <QJsonArray>
|
||||
#include <QJsonObject>
|
||||
#include <QSharedPointer>
|
||||
@ -293,7 +295,7 @@ int SearchController::generateSearchId() const
|
||||
|
||||
while (true)
|
||||
{
|
||||
const auto id = Utils::Random::rand(1, INT_MAX);
|
||||
const int id = Utils::Random::rand(1, std::numeric_limits<int>::max());
|
||||
if (!searchHandlers.contains(id))
|
||||
return id;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user