pg_listener 表支持 LISTEN 和 NOTIFY 命令。一个监听器为它监听的每个通知名称在 pg_listener 里创建一条记录。一个通知发起人扫描 pg_listener 并且更新每条匹配的记录以显示一个通知已经发生。通知发起人还发送一个信号给监听器(使用记录在表中的 PID)以唤醒它做处理。
表43-22. pg_listener 字段
名字 | 类型 | 引用 | 描述 |
relname | name | 通知条件名。该名字不需要匹配任何数据库中的实际关系;项 relname 是历史原因形成的。 | |
listenerpid | int4 | 创建此条目的服务器进程的 PID | |
notification | int4 | 如果这个监听器上没有等待的事件,那么是零。如果有等待的事件,那么是发送通知的服务器的 PID | |