トップページ > 記事閲覧
DxLibの通信機能について
名前:だんごさん 日時: 2013/11/04 22:10

関数の呼び出し方に質問があります。 たとえば、送信側がデータを3つ送信したとします。NetWorkSendを3回連続で呼び出したと思ってください。 その時受信側は、 if(GetNetWorkDataLength( NetHandle )>0){//サイズが0より大きかったら  NetWorkRecv(...);//1回目の受信  NetWorkRecv(...);//2回目の受信  NetWorkRecv(...);//3回目の受信 } という風に連続して受信関数を呼び出してもよろしいのでしょうか? それとも送信にラグがあるとなると、毎回サイズ(受信したか)を確認し、何回目の受信かを記録する必要があるのでしょうか? …これは不具合が出そうなので他の方法をとりたいです。
メンテ

Page: 1 |

Re: DxLibの通信機能について ( No.1 )
名前:だんごさん 日時:2013/11/04 22:29

色々調べてみたらどうやらできるっぽいですね… ttp://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N21 できますよね…?
メンテ
Re: DxLibの通信機能について ( No.2 )
名前:管理人 日時:2013/11/04 23:46

GetNetWorkDataLength の戻り値が NetWorkRecv 3回で読み取るバイト数よりも大きい場合は 3回連続で NetWorkRecv をしても大丈夫です ただ、GetNetWorkDataLength の戻り値が NetWorkRecv 3回で読み取るバイト数よりも小さい場合はまずいです NetWorkSend を3回連続で実行しても、相手側に NetWorkSend 3回分のデータが一度に 到着するとは限らないという前提でプログラムを組む必要があります
メンテ
Re: DxLibの通信機能について ( No.3 )
名前:だんごさん(解決) 日時:2013/11/05 22:29

ありがとうございます。 参考にしてプログラム組んでみます。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存