[PyQt] QtSql and releasing GIL

Phil Thompson phil at riverbankcomputing.com
Tue Apr 22 11:29:47 BST 2014


On 22/04/2014 11:22 am, Arve Knudsen wrote:
> I am experiencing this issue again.it [1]'s QtSql.QSqlQuery that
> locks up the application, even though it runs in a non-UI thread. I've
> confirmed that the main thread has relinquished control back to the Qt
> event loop.
> 
> It's a total showstopper at the moment, so I'm considering querying in
> a separate process instead.
> 
> Arve

Sorry I've just realised that my comment below is completely wrong. The 
GIL is released for next() but nor for value() or any ctor. Can you 
confirm exactly which function it is locking up in?

Phil

>  On Fri, Mar 21, 2014 at 4:58 PM, Arve Knudsen
> <arve.knudsen at gmail.com> wrote:
> 
>> Hm, I wonder how come it was hanging then :(
>> 
>> Arve
>> 
>> On Fri, Mar 21, 2014 at 4:42 PM, Phil Thompson
>> <phil at riverbankcomputing.com> wrote:
>> On 21-03-2014 3:28 pm, Arve Knudsen wrote:
>> Sorry, its PyQt5. I wasnt able to determine which exact method it
>> was,
>> 
>> since it took me a while to grasp what was going on. I think it was
>> either QSqlQuery (constructor) or QSqlQuery.next that was hanging
>> (possibly QSqlQuery.value although I guess thats unlikely?).
>> 
>> PyQt5 releases the GIL by default.
>> 
>> Phil


More information about the PyQt mailing list