我正在开发一个应该与 PostgreSQL 对话的 C 应用程序。现在我需要处理服务器发送的通知和警告,但我不知道如何让它工作。
(非常不清楚)文档说我们应该使用 PQsetNoticeReceiver 将方法设置为通知的接收者,因为默认接收者只是将通知转发到 PQnoticeProcessor 并打印到 stderr。
我已经定义了一个方法
static void noticeReceiver(void *arg, const PGresult *res)
我将它设置为启动时的默认通知接收器
PQsetNoticeReceiver(conn, noticeReceiver, NULL);
在我的方法实现中,我只是将一些随机字符打印到屏幕上,但它没有被调用。逐步调试表明它被设置为默认通知接收器,但从未调用过。
有任何想法吗?