私は、PostgreSQLからのデータ変更の通知を受け取る必要のあるC++アプリケーションを、libpqxxライブラリに書きました。しかし、tutorialにはそのようなユースケースは含まれていません。通知は、複数のチャネルで受信する必要があります。また、ネットワークライブラリーとしてboost::asioを使用しています。可能であれば、私にとってはasioのソケットクラスと、未処理のBSDスタイルソケットのポーリングではなく通知イベントの非同期コールバックを使用してください。誰かがこれのためのサンプルコードや、これを達成するための外部リソースへのリンクを提供できますか? notification_receiver
のAPIリファレンスであるlibpqxxを使ってPostgreSQLデータベースから通知を受け取るには?
答えて
あなたはhttp://pqxx.org/devprojects/libpqxx/doc/4.0/html/Reference/a00208.html「通知とレシーバ」を参照してください、pqxx::notification_receiver
から派生したクラスを必要とし http://pqxx.org/devprojects/libpqxx/doc/4.0/html/Reference/a00062.html。
_boost :: asio_イベントループで受信した通知を統合することはできますか? – bobeff
ポーリングを避けることが本当に重要な場合は、libpqxxの代わりにlibpqを使用します。ポーリングを避ける方法については、https://www.postgresql.org/docs/9.1/static/libpq-notify.htmlを参照してください。 自信がない:私はasioとの直接的な統合は本質的に不可能だと思います。私は、libpqで通知を受け取るために排他的に別のスレッドを実行し、io_service :: postを使ってasio hairballに通知を渡します。 – NovaDenizen
10x * libpqxx *と* boost :: asio *を* asio *の* null_buffers *機能を使って統合することができました。 – bobeff
- 1. postgresqlデータベースが更新されたときに通知を受け取る
- 2. AVPlayerからオーディオストリーミングステータスの通知を受け取る方法は?
- 3. Satchmoで注文通知を受け取っていない
- 4. Android Wearエミュレータが通知を受け取っていません
- 5. 生産通知を受け取っていません
- 6. プッシュ通知を使用してGmailアカウントから新しいメール通知を受け取る方法
- 7. 通知が通知されたときに通知を受け取る方法
- 8. プッシュ通知を受け取った後にウェブリクエストを作成
- 9. 通知を受け取った後に表示を再表示
- 10. Androidの別のサーバーから通知を受け取る方法
- 11. GETリクエストから通知を受け取る方法Swift
- 12. Angular2 +親が親から通知を受け取る方法
- 13. 受け取った支払いを通知するPayPal API
- 14. 間違ったiPhoneアプリの通知を受け取る
- 15. NSNotificationCenterを使用して通知を受け取ります
- 16. プッシュキットを通じて通知を受け取る方法はありますか?
- 17. アンドロイドからの通知を受け取ります。
- 18. コンピュータから電話への通知を受け取ります
- 19. DocuSign APIからのイベント通知を受け取りません
- 20. データベース変更時にアンドロイドに関する通知を受け取る
- 21. iPhoneがオンラインに戻った後にリモート通知を受け取る方法は?
- 22. ダウンロード後に通知を受け取るには?
- 23. Androidアプリは通知を受け取り続ける
- 24. 通知を受け取ったときに鳴るように通知するように設定する
- 25. 私が受け取ったApple Push通知を制御するには
- 26. linux/QtでUSB通知を受け取るには?
- 27. データベースが変更されたときに通知を受け取るC#
- 28. 通知を受け取ったときにPushKitを処理しますか?
- 29. GCMプッシュ通知(コルドバ)を受け取ったときにアプリをフォアグラウンドにする
- 30. Laravel Echoはプッシュ通知をリアルタイムで受け取っていない - アイデア?
あなたは、PostgreSQLにクライアントに「データ変更」を通知できると言った人はいますか? Postgresqlにはそのようなものは何もありません。 PostgreSQLが持つ唯一のことは、協力しているクライアントプロセス間の抽象的なリスン/通知のシグナル伝達機能です。 –
トリガーとともに使用できるNOTIFY機能を意味します。 [こちら](https://www.postgresql.org/docs/9.5/static/sql-notify.html)はドキュメントです。クライアントアプリケーションは、データベースへのソケットを開いて、指定されたチャネルの通知を待ち受けることができます。 – bobeff