On 1/6/2014 10:32 AM, Tom Lane wrote:
Stephen Woodbridge <wood...@swoodbridge.com> writes:
I writing some functions for postgresql extension in C/C++ and I would
like to be able to check for a pending CancelRequest from the frontend
so I can take appropriate action to honor this request.

Put "CHECK_FOR_INTERRUPTS();" in some suitably safe place.

Thanks! Looking at this macro its doing

if (InterruptPending)
    ProcessInterrupts();

Am I correct in assuming that ProcessInterrupts() may not return?

So if I need to clean up then I should check do something like:

if (InterruptPending) {
    /* cleanup here */
    ProcessInterrupts();
}

Similarly if I'm in C++ code I can probably include miscadmin.h as an extern C to get access to this.

Thanks again,
  -Steve


--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to