Revision 024bb76...

Go back to digest for 6th April 2014

Features in Networking Tools

Juan Palacios committed changes in [ktorrent] /:

Implement a magnet manager

Until now, all added magnets were being started to download immediately.
This is not a problem when the magnet download list is short. But, this
is not the case when the syndication plugin are used to download a big
list of magnets. In this scenario, KTorrent hangs and after after
a short time, fills the avaiable system memory.

This patch implements a magnet manager that will download the magnets
added to it in a sane way. It uses a number of downloading slots to
download the magnets concurrently. If a magnet is not downloaded in
a period of time, it will be pushed back at the end of the queued
magnets. The use of the timer, the maximum time of the timer and the
number of downloading slots are configurable through the advanced
settings tab in the settings dialog.

The old functionality to start, stop and delete magnets is preserved.

File Changes

Added 2 files
  • /torrent
  •   libktcore/magnetmanager.cpp
  •   libktcore/magnetmanager.h
Modified 14 files
  •   ktorrent/core.cpp
  •   ktorrent/core.h
  •   ktorrent/torrentactivity.cpp
  •   libktcore/CMakeLists.txt
  •   libktcore/ktorrent.kcfg
  •   ktorrent/pref/advancedpref.cpp
  •   ktorrent/pref/advancedpref.ui
  •   ktorrent/tools/magnetmodel.cpp
  •   ktorrent/tools/magnetmodel.h
  •   ktorrent/tools/magnetview.cpp
  •   ktorrent/tools/magnetview.h
  •   libktcore/dbus/dbussettings.cpp
  •   libktcore/dbus/dbussettings.h
  •   libktcore/interfaces/coreinterface.h
16 files changed in total