From: | Luis Rodrigo Gallardo Cruz <rodrigo(at)nul-unu(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: query asincronico y SPI |
Date: | 2005-09-24 18:56:36 |
Message-ID: | 20050924185636.GL29617@ns0.nul-unu.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Sat, Sep 24, 2005 at 01:55:07PM -0400, Mario Soto Cordones - Venezuela wrote:
> OK, el unico problema es que yo utilizo en mis funciones hechas en C,
> SPI , y las llamo desde cualquier cliente, no utilizo libpq, lo que me
> lleva a la pregunta original, pero aun asi no entiendo como funciona
> el LISTENER y he leido toda la documentacion tanto del LISTENER como
> el NOTIFY, solo se que esto es lo que necesito, pero aun no se como
> implementarlo:
>
> Por ejemplo:
>
> mi funcion hecha en C, con SPI se llama actualiza.so,, para llamarla
> lo que hago simplemente desde el cliente es select * from actualiza();
>
> Y la funcion ya sabe lo que debe hacer., Pero sigo sin entender como
> llamar esta funcion desde un LISTENER.
>
> Gracias nuevamente.
El Listener es otro programa, que ejecutas y dejas corriendo. Éste se
registra usando libpq para recibir los notify. Cuando llega uno, ejecuta
tu 'select * from actualiza()' y regresa a esperar.
El resto de tus clientes no llaman a actualiza(). Lo que hacen es que,
cuando realizan una modificación que requiere llamar a actualiza()
ejecutan un NOTIFY, con la misma cadena con la que se registró el
listener.
--
Rodrigo Gallardo
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Soto Cordones - Venezuela | 2005-09-24 19:13:12 | Re: query asincronico y SPI |
Previous Message | Mario Soto Cordones - Venezuela | 2005-09-24 17:55:07 | Re: query asincronico y SPI |