Allow to use POSIX-compliant disk IO type

This patch allows user to switch disk IO type between memory mapped files based type (default in libtorrent 2, and seems causing memory issues) and POSIX-compliant type which is more conservative on memory usage.

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru>

PR #16895.
This commit is contained in:
Coda
2022-05-11 11:28:06 -07:00
committed by GitHub
parent a048ea668f
commit e698c09298
8 changed files with 90 additions and 1 deletions

View File

@@ -50,6 +50,10 @@
#ifdef QBT_USES_LIBTORRENT2
std::unique_ptr<lt::disk_interface> customDiskIOConstructor(
lt::io_context &ioContext, lt::settings_interface const &settings, lt::counters &counters);
std::unique_ptr<lt::disk_interface> customPosixDiskIOConstructor(
lt::io_context &ioContext, lt::settings_interface const &settings, lt::counters &counters);
std::unique_ptr<lt::disk_interface> customMMapDiskIOConstructor(
lt::io_context &ioContext, lt::settings_interface const &settings, lt::counters &counters);
class CustomDiskIOThread final : public lt::disk_interface
{