永続的なメッセージをRabbitMQエクスチェンジに送信するプロデューサーがいます。RabbitMQのメモリまたはディスクが透かしのしきい値を超えると、RabbitMQはプロデューサーをブロックします。ドキュメントには、ソケットからの読み取りを停止し、ハートビートも一時停止すると記載されています。
私が欲しいのは、私がブロックされていることをプロデューサーコードで知る方法です。現在、ハートビートが有効になっている場合でも、すべてが永久に一時停止します。ブロックされていることを認識し、ユーザーに警告したり、その他のアクションを実行したりできるように、ある種の例外を受け取りたいのですが、これを行う方法が見つかりません。私はJavaクライアントとC#クライアントの両方を使用しており、両方でこの機能が必要になります。何かアドバイス?ありがとう。