mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-07-16 02:03:07 -07:00
- Multithreaded deletionThread (harmonized with deleteThread)
This commit is contained in:
parent
5518144b26
commit
570296c29e
4 changed files with 108 additions and 26 deletions
|
@ -66,6 +66,8 @@ bittorrent::bittorrent(){
|
|||
downloader = new downloadThread(this);
|
||||
connect(downloader, SIGNAL(downloadFinished(QString, QString)), this, SLOT(processDownloadedFile(QString, QString)));
|
||||
connect(downloader, SIGNAL(downloadFailure(QString, QString)), this, SLOT(HandleDownloadFailure(QString, QString)));
|
||||
// File deleter (thread)
|
||||
deleter = new deleteThread(this);
|
||||
}
|
||||
|
||||
// Main destructor
|
||||
|
@ -76,6 +78,7 @@ bittorrent::~bittorrent(){
|
|||
saveDHTEntry();
|
||||
saveFastResumeAndRatioData();
|
||||
// Delete our objects
|
||||
delete deleter;
|
||||
delete timerAlerts;
|
||||
delete ETARefresher;
|
||||
delete downloader;
|
||||
|
@ -184,17 +187,10 @@ void bittorrent::deleteTorrent(QString hash, bool permanent){
|
|||
// Remove from Hard drive
|
||||
qDebug("Removing this on hard drive: %s", qPrintable(savePath+QDir::separator()+fileName));
|
||||
// Deleting in a thread to avoid GUI freeze
|
||||
deleteThread *deleter = new deleteThread(savePath+QDir::separator()+fileName);
|
||||
connect(deleter, SIGNAL(deletionFinished(deleteThread*)), this, SLOT(cleanDeleter(deleteThread*)));
|
||||
deleter->deletePath(savePath+QDir::separator()+fileName);
|
||||
}
|
||||
}
|
||||
|
||||
// slot to destroy a deleteThread once it finished deletion
|
||||
void bittorrent::cleanDeleter(deleteThread* deleter){
|
||||
qDebug("Deleting deleteThread because it finished deletion");
|
||||
delete deleter;
|
||||
}
|
||||
|
||||
// Pause a running torrent
|
||||
bool bittorrent::pauseTorrent(QString hash){
|
||||
bool change = false;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue