forked from qt-creator/qt-creator
Improve performance of writing settings
By wrapping related ones in a single transaction, instead of (implicitly) doing a transaction per settings value that is written. Task-number: QTCREATORBUG-11524 Change-Id: I28e06c9d6cd4ebad024f9c277796abb37df5f992 Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This commit is contained in:
@@ -252,6 +252,20 @@ QStringList SettingsDatabase::childKeys() const
|
||||
return children;
|
||||
}
|
||||
|
||||
void SettingsDatabase::beginTransaction()
|
||||
{
|
||||
if (!d->m_db.isOpen())
|
||||
return;
|
||||
d->m_db.exec(QLatin1String("BEGIN TRANSACTION;"));
|
||||
}
|
||||
|
||||
void SettingsDatabase::endTransaction()
|
||||
{
|
||||
if (!d->m_db.isOpen())
|
||||
return;
|
||||
d->m_db.exec(QLatin1String("END TRANSACTION;"));
|
||||
}
|
||||
|
||||
void SettingsDatabase::sync()
|
||||
{
|
||||
// TODO: Delay writing of dirty keys and save them here
|
||||
|
||||
Reference in New Issue
Block a user