pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Terry Lee Tucker <terry@esc1.com>
To: PostgreSQL Interfaces <pgsql-interfaces@postgresql.org>
Subject: Re: libpq, blocking/nonblocking mechanism
Date: Wed, 1 Jun 2005 15:10:10 -0400
Message-ID: <200506011510.10371.terry@esc1.com> (raw)
In-Reply-To: <7104a7370506011118270bf58f@mail.gmail.com>
References: <7104a737050528133410045f04@mail.gmail.com>
	<200505310651.54505.terry@esc1.com>
	<7104a7370506011118270bf58f@mail.gmail.com>


On Wednesday 01 June 2005 02:18 pm, Volkan YAZICI saith:
> Hi,
>
> On 5/31/05, Terry Lee Tucker <terry@esc1.com> wrote:
> [snipped]
>
> > I'm looking at the documentation in:
> > file:/usr/share/doc/postgresql-7.4.6/html/libpq-async.html
> > on my machine.
>
> Thanks so much, but I'm able to read manuals too.

From your original message:
"P.S. Documentation pointers will be accepted with pleasure too."

> I'm trying to don't
> carry my questions here until I finish a satisfying
> postgresql.org/docs plus google.com search. Namely, I read that lines
> nearly I hundred times.
>
> I advice you to looking at my question twice.
PQsetnonblocking () causes PQsendQuery to send an sql string to the backend 
and it returns immediately if you have set nonblocking to true. If you have 
not set nonblocking to true, then PQsendQuery behaves just like PQexec; it 
blocks, i.e., it waits for the query, update, delete, or whatever to complete 
before it returns program control back to your program. We set nonblocking to 
True in our application and when the user queries a large table that could 
return thousands of records, we use PQsendQuery instead of PQexec; however, 
if you do that, then you have to use PQconsumeInput and PQisBusy in 
conjunction with a select statement to monitor the backend connection socket 
so you can process the results when the query finishes. Another reason for 
using asynchronous queries is that you can provide a mechanism for the user 
to cancel the operation.  Our application is X-Windows based written in C. 
All my examples are C. If you want to see any of it, you can let me know.

>
> Regards.
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
>       joining column's datatypes do not match



view thread (5+ messages)  latest in thread

Message-ID: <200506011510.10371.terry@esc1.com>
Permalink:  ../200506011510.10371.terry@esc1.com/
Also on:    postgresql.org/message-id/200506011510.10371.terry@esc1.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: terry@esc1.com
  Subject: Re: libpq, blocking/nonblocking mechanism
  In-Reply-To: <200506011510.10371.terry@esc1.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox