diff options
Diffstat (limited to 'psycopg/connection_int.c')
-rw-r--r-- | psycopg/connection_int.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/psycopg/connection_int.c b/psycopg/connection_int.c index da8a4644..d0775ecc 100644 --- a/psycopg/connection_int.c +++ b/psycopg/connection_int.c @@ -904,8 +904,14 @@ _conn_poll_advance_read(connectionObject *self) Dprintf("conn_poll: poll reading"); + Py_BEGIN_ALLOW_THREADS; + pthread_mutex_lock(&(self->lock)); + busy = pq_get_result_async(self); + pthread_mutex_unlock(&(self->lock)); + Py_END_ALLOW_THREADS; + switch (busy) { case 0: /* result is ready */ Dprintf("conn_poll: async_status -> ASYNC_DONE"); |