LINUX.ORG.RU

[libpqxx]Трабла с листенером


0

0

Пытаюсь заюзать механизм notify-listen, но никак не выходит. По заверешении пишет «Closing connection with outstanding listeners». Код примерно такой(выпилил проверку ошибок, чтобы не загромождать)

class DRM_KeyListener : public notify_listener
{
  public:
    DRM_KeyListener(connection &conn) : notify_listener(conn, "test_event"){};
    virtual void operator()(int be_pid)
    {
      cout << "notify received! " << be_pid << endl;
    };
};

int main(int argc, char **argv)
{
  ostringstream conn_string("");
  conn_string << "host=" << argv[1]
              << " user=" << argv[2]
              << " password=" << argv[3]
              << " dbname=" << argv[4];

  pqxx::connection conn_for_listener(conn_string.str());
  DRM_KeyListener* key_listener = new DRM_KeyListener(conn_for_listener);

  pqxx::connection conn(conn_string.str());
  pqxx::work xact(conn, "SampleSelect");
  string produceEventQuery("SELECT test.produce_test_event()");
  pqxx::result res = xact.exec(createKeyQuery);
  return 0;
}

★★

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.