自分1台のPCでどう確かめたらよいか分からなかったので質問させていただきます。
DXライブラリの通信、NetWorkRecvUDPは1フレームで1回実行するのなら、
受信するべきデータが複数あってもデータの受信は1フレームに1回しか行わないのでしょうか。
それとも受信するべきデータがなくなるまで受信するのでしょうか。
あと、1台のPCで通信関連のプログラムのテストをする方法があるなら教えていただけるとありがたいです。
宜しくお願いします。
DXライブラリの通信
Re: DXライブラリの通信
あくまで予想ですが、受信するべきデータまたは受信バッファの容量がなくなるまで受信すると思います。とんとん さんが書きました:DXライブラリの通信、NetWorkRecvUDPは1フレームで1回実行するのなら、
受信するべきデータが複数あってもデータの受信は1フレームに1回しか行わないのでしょうか。
それとも受信するべきデータがなくなるまで受信するのでしょうか。
なぜなら、NetWorkRecvUDP関数のリファレンスを見ると、
という記述があります。関数が成功すると通常受信データは受信データキューから削除されますが、 引数 Peek を TRUE にすると受信データがキューにそのまま残ります。 この場合、次に NetWorkRecvUDP を呼んだ場合も前回と同じデータを取得することになります。
受信データキューがあるということは、NetWorkRecvUDP関数が実行される間に複数のデータを受信できることを示唆していそうです。
また、DXライブラリ 3.15cのDxNetwork.cppを見ると、Winsockの関数をメッセージを利用しながら利用する実装になっているため、
他のWindowsアプリケーションと同様に受信するでしょう。
単純なものなら、127.0.0.1や仮想マシンを利用するといいでしょう。とんとん さんが書きました:あと、1台のPCで通信関連のプログラムのテストをする方法があるなら教えていただけるとありがたいです。
宜しくお願いします。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: DXライブラリの通信
ふむふむ。ありがとうございます。仮想マシンのことはすっかり抜けていました。ありがとうございます。
しっかりライブラリのページを読むべきでした。ごめんなさい。
教えてくださってありがとうございます。
しっかりライブラリのページを読むべきでした。ごめんなさい。
教えてくださってありがとうございます。