C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

UDP通信 クライアント側 受信処理

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■83091 / inTopicNo.1)  UDP通信 クライアント側 受信処理
  
□投稿者/ AAAA (1回)-(2017/03/06(Mon) 12:48:32)

分類:[VB.NET/VB2005 以降] 

VBでUDP通信をするクライアント側のプログラムを作成しています。
受信処理は一定の時間ごとにしているのですが複数のデータをサーバ側から送信した場合最初に送ったデータをクライアント側で受信し次に受信処理をしたときに後に送ったデータを受信する状態なのですが受信処理はタイマーを使わずに繋ぎっぱなしのほうが良いのでしょうか?
また 受信バッファ data を受信したら初期化したいのですが Erase data で初期化できますか?

以上 よろしくお願いします。


If udpClientB.Available > 0 Then
Dim ip As System.Net.IPEndPoint = New System.Net.IPEndPoint(System.Net.IPAddress.Any, 0)
Dim data As Byte() = udpClientA.Receive(ip)

Test = System.Text.Encoding.GetEncoding(932).GetString(data)

引用返信 編集キー/
■83102 / inTopicNo.2)  Re[1]: UDP通信 クライアント側 受信処理
□投稿者/ Azulean (790回)-(2017/03/06(Mon) 21:48:53)
No83091 (AAAA さん) に返信
> 受信処理は一定の時間ごとにしているのですが複数のデータをサーバ側から送信した場合最初に送ったデータをクライアント側で受信し次に受信処理をしたときに後に送ったデータを受信する状態なのですが受信処理はタイマーを使わずに繋ぎっぱなしのほうが良いのでしょうか?

つなぎっぱなしにしないということは、受信する度にポートを閉じているのでしょうか?
そうだとすると、次に開くまでの間に送られたパケットは受け取れないのでは…?


> また 受信バッファ data を受信したら初期化したいのですが Erase data で初期化できますか?

Array.Clear を調べてはどうでしょうか。
(Erase は最近聞かれたキーワードではあるものの、なぜ、Erase という発想になるのだろうか)
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ