1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-18 20:04:00 +02:00

Emit signal when shutdown gets blocked by outstanding db jobs.

This commit is contained in:
Christian Muehlhaeuser
2014-10-25 03:56:04 +02:00
parent d1bf26dfd5
commit 0c37308c9c
2 changed files with 7 additions and 2 deletions

View File

@@ -157,16 +157,17 @@ Database::~Database()
workerThread->quit();
}
emit waitingForWorkers();
if ( m_workerRW )
{
m_workerRW.data()->wait( 60000 );
m_workerRW.data()->wait();
delete m_workerRW.data();
}
foreach ( QPointer< DatabaseWorkerThread > workerThread, m_workerThreads )
{
if ( workerThread )
{
workerThread.data()->wait( 60000 );
workerThread.data()->wait();
delete workerThread.data();
}
}
@@ -176,6 +177,7 @@ Database::~Database()
qDeleteAll( m_commandFactories.values() );
delete m_impl;
emit workersFinished();
}

View File

@@ -108,6 +108,9 @@ signals:
void newJobRO( Tomahawk::dbcmd_ptr );
void newJobRW( Tomahawk::dbcmd_ptr );
void waitingForWorkers();
void workersFinished();
public slots:
void enqueue( const Tomahawk::dbcmd_ptr& lc );
void enqueue( const QList< Tomahawk::dbcmd_ptr >& lc );