描述
UNLISTEN
用于删除一个现有的已注册的
NOTIFY.
UNLISTEN 取消当前
Postgres
会话中的所有对通知条件
notifyname 监听.
特殊的条件通配符 "*" 则取消对当前会话的所有通知条件的监听.
NOTIFY
包含一些对
LISTEN 和
NOTIFY 的使用的更广泛的讨论.
注意
notifyname
不必是一个有效的表名,而可以是任何少于32字符的有效字串名.
如果你 UNLISTEN 一个你没有监听的事件,后端不会报错.
每个后端在退出时都会自动执行
UNLISTEN *.
用法
提交一个现存的注册:
LISTEN virtual;
LISTEN
NOTIFY virtual;
NOTIFY
Asynchronous NOTIFY 'virtual' from backend with pid '8448' received
一旦执行了 UNLISTEN,以后的 NOTIFY 命令将被忽略:
UNLISTEN virtual;
UNLISTEN
NOTIFY virtual;
NOTIFY
-- notice no NOTIFY event is received