質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

解決済

1回答

715閲覧

C# ZMQで変更通知の実装に関して

kawauso

総合スコア56

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

0グッド

0クリップ

投稿2017/08/01 23:44

お世話になっております。
現在、ZeroMQライブラリを使用して、クライアント側のソフトを作成しております。
ソースは下記のようになっています。

C#

1using (var context = new ZContext()) 2using (var requester = new ZSocket(context, ZSocketType.REQ)) 3{ 4 // Connect 5 requester.Connect("tcp://127.0.0.1:5555"); 6 7 // Send 8 requester.Send(new ZFrame("Hello")); 9 10 while(true) 11 { 12 // Receive 13 using (ZFrame reply = requester.ReceiveFrame()) 14 { 15 Console.WriteLine(" Received: {0} {1}!", requestText, reply.ReadString()); 16 } 17 } 18}

問題点
現在、while文でループさせているところなのですが、
時々、デフォルトの値?らしきものが返ってきてしまいます。

行いたいこと
requesterに変更があった時点で、呼ばれるような仕組みを作成したいのですが、
どのようにすれば、実装できるでしょうか?

環境
C# .NET 4.5, Visual Studio2017 Pro, ZeroMQ C# 4.1.0.22

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

https://github.com/booksbyus/zguide/blob/master/examples/C%23/mspoller.cs 等を参考にして、ソケットに対してポーリングを行うというのはどうでしょうか。

投稿2017/08/07 01:03

skitoy4321

総合スコア229

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kawauso

2017/08/08 23:36

回答ありがとうございました。サンプルコード、とても参考になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問