LISTEN 將當前會話註冊為通知條件 name
當執行了命令 NOTIFY name 後,不管是此會話還是其他聯接到同一資料庫的會話執行的, 所有正在監聽此通知條件的會話都將收到通知, 並且接下來每個會話將通知與其相連的前端應用.請參考 NOTIFY 獲取更多資訊.
使用 UNLISTEN 命令,可以將一個會話內已註冊的通知條件刪除. 同樣,會話退出時自動刪除該會話正在監聽的已註冊通知條件.
前端應用檢測通知事件的方法取決於 PostgreSQL 應用使用的程式設計介面. 如果使用基本的libpq庫, 應用將 LISTEN 當作普通 SQL 命令使用,而且必須週期地呼叫 PQnotifies 過程來檢測是否有通知到達. 其他像libpgtcl介面提供了更高階的控制通知事件的方法;實際上, 使用libpgtcl,應用程式設計師不應該直接使用 LISTEN 或 UNLISTEN. 請參考你使用的介面的文件獲取更多細節.
NOTIFY [notify(7)] 的手冊頁包含更廣泛的關於 LISTEN 和 NOTIFY 的使用的討論.
在 psql 裡配製和執行一個監聽/通知序列:
LISTEN virtual;
NOTIFY virtual;
Asynchronous notification "virtual" received from server process with PID 8448.
Postgresql 中文網站 何偉平 <laser@pgsqldb.org>
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh