6

我正在尝试使用libpqxx监听通知事件。我从一个扩展的例子开始pqxx::notify_listener

#include <iostream>
#include <string>
#include <pqxx/pqxx>

class Foo : public pqxx::notify_listener {

public:
  Foo(pqxx::connection_base &c): pqxx::notify_listener(c, "listen") {}
  virtual void operator()(int id) { std::cout << "HERE!" << std::endl; }
};

int main(void) {
  // set up the listener
  pqxx::connection con("...secret...");
  Foo listener(con);

  // loop forever ...
}

我无法让这个工作。

我尝试将 name 参数切换为
pqxx::notify_listener(c, "my_schema")
pqxx::notify_listener(c, "listen my_schema")以及其他一些参数。

我正在通过 pgAdmin 手动创建 NOTIFY 事件。无论我做什么,仿函数都不会被执行。

4

1 回答 1

7

你打电话pqxx::connection_base::get_notifs()还是pqxx::connection_base::await_notification()在主循环?

如果没有,你需要。

于 2012-10-10T23:55:32.140 回答