pg_listen

名前

pg_listen -- 非同期通知メッセージ用のコールバックを設定、変更します。

概要

pg_listen conn notifyName ?callbackCommand?

説明

pg_listen は、PostgreSQLサーバからの非同期通知メッセージの監視要求の作成、変更、キャンセルを行ないます。 callbackCommandパラメータを付けると、要求が確立します。 さもなくば、既存要求のコマンド文字列が置換されます。 callbackCommandパラメータを付けないと、以前の要求はキャンセルされます。

pg_listen要求が確立した後、 その名前を持った通知メッセージがサーバから届く度に、指定されたコマンド文字列が実行されます。 これは、PostgreSQLクライアントアプリケーションがその名前を参照するNOTIFYコマンドを発行した時に発生します。 コマンド文字列はTclの待機ループから実行されます。 Tkを使用したアプリケーションでは、これは通常の待機状態です。 Tk以外のTclシェルの場合、update もしくは vwait を実行することで、待機ループに入ることができます。

pg_listenを使用する場合、直接LISTENもしくはUNLISTENSQL文を呼び出さないでください。 pgtclではこれらの文の発行を管理しています。 しかし、自身から通知メッセージを送信する場合は、pg_execを使用してNOTIFY 文を呼び出してください。

引数

conn

通知を監視する接続のハンドルです。

notifyName

監視を開始、停止させる通知条件の名前です。

callbackCommand

指定した場合、これが一致する通知が届いた時に実行されるコマンド文字列になります。

戻り値

ありません。