Re: libpq, blocking/nonblocking mechanism
От | Volkan YAZICI |
---|---|
Тема | Re: libpq, blocking/nonblocking mechanism |
Дата | |
Msg-id | 7104a73705060306553672f56a@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: libpq, blocking/nonblocking mechanism (Terry Lee Tucker <terry@esc1.com>) |
Список | pgsql-interfaces |
Hi, On 6/1/05, Terry Lee Tucker <terry@esc1.com> wrote: > 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. Thanks so much for the explanation. > 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. I'd be so appreciated to see them. Regards.
В списке pgsql-interfaces по дате отправления: