[Interest] QThreadPool & writing to the DB

william.crocker at analog.com william.crocker at analog.com
Mon Aug 18 14:26:07 CEST 2014


On 08/18/2014 07:51 AM, Igor Mironchik wrote:
> Hi.
>
> Well, but with SQLite this approach works...

Which goes to show you just how sadistic
multi-threading can be.

>
> -----Original Message-----
> From: Sze Howe Koh
> Sent: Monday, August 18, 2014 12:57 PM
> To: Igor Mironchik
> Subject: Re: [Interest] QThreadPool&  writing to the DB
>
> Hi Igor,
>
> On 18 August 2014 14:26, Igor Mironchik<igor.mironchik at gmail.com>  wrote:
>> Hi.
>>
>> I want to move write to DB operation to another thread (from the GUI
>> thread). And I implemented the following QRunnable:
>
> <snip>
>> Is it OK to launch this runnable every time when I need to write to the
>> log?
>
> <snip>
>> And what if previous operation is still not finished and I will launch
>> another?
>
> According to http://qt-project.org/doc/qt-5/threads-modules.html, your
> queries must be made from the same thread which opened the database
> connection. You cannot use QRunnable, because it doesn't let you
> choose which thread to use.
>
> If you want to make queries in another thread, you must create a
> QSqlDatabase in that thread, and associate every QSqlQuery with that
> QSqlDatabase. Then, run every query from that same thread.
>
> See the QThread documentation for examples on how to set up your
> thread: http://qt-project.org/doc/qt-5/QThread.html
>
>
> Regards,
> Sze-Howe
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>



More information about the Interest mailing list