トップページ > 過去ログ > 記事閲覧
通信状態の確認
名前:ライブラリ使用者 日時: 2007/10/25 00:02

 題の通りなのですが、通信状態の確認を皆さんがどの程度の割合で使用されているかお聞きしたいです。 CloseNetWork()、GetNetWorkAcceptState()が通信状態確認するために使われる関数だと思うのですが、この2つをどの頻度で使うか、またそれによる通信の重さがはっきりしません。 ProcessMessage()と同程度か(fps60動作させてるので、60回/秒) もっと頻度少なくてよい?(1回/秒) 皆さんの意見参考にさせてください。 参考までに、自分はピーク時で数KB/s程度の通信をする予定です。 (for文×数百B程度のデータを1度に回すつもりです)

Page: 1 |

Re: 通信状態の確認 ( No.1 )
名前:管理人 日時:2007/10/25 01:56

CloseNetWork は通信を終了する時に使用する関数なので、通信状態を 確認する用途としては使用しません。 通信状態を確認する用途として使用する関数は GetNetWorkAcceptState 関数 のみとなります。 本題ですが、GetNetWorkAcceptState 関数でしたら全然重くありませんので、 1フレームに何回呼んで頂いても大丈夫です。
Re: 通信状態の確認 ( No.2 )
名前:ライブラリ使用者 日時:2007/10/25 23:59

回答ありがとうございます。 が、1つ訂正。 CloseNetWork → GetLostNetWork の方です。(同じ事だとは思いますが。 GetLostNetWorkのリファレンスで気になったので、そちらも質問。 「因みに、接続は絶たれてもこの関数での確認が出来るように接続データ 自体は生きているので、切断確認後CloseNetWork関数を使用して 明示的に接続処理を終了する必要があります。」 GetLostNetWork()で検出すると言う事は、相手側ですでにCloseNetWork()されたということですよね? それをさらにこちらでもCloseNetWork()するのですか? PreparationListenNetWorkの所に、CloseNetWork関数で切断すると相手側のネットワークハンドルも無効になります。 という記述と矛盾してる気がするのですが。 それとも接続が断たれたとは、LANケーブルが物理的に外れたなど、意図しないケースをいっているのでしょうか?
Re: 通信状態の確認 ( No.3 )
名前:ライブラリ使用者 日時:2007/10/26 01:20

変な書き方になってしまいました。 CloseNetWork()ではなく、GetLostNetWork()について確認したかったです。
Re: 通信状態の確認 ( No.4 )
名前:管理人 日時:2007/11/02 02:48

GetLostNetWork 関数は全ての通信ハンドルを常に GetNetWorkAccessState 関数で 監視している場合には使う必要はありません。使う場合も処理負荷は低いので 毎フレーム実行してしまっても問題ありません。 > PreparationListenNetWorkの所に、CloseNetWork関数で切断すると相手側の > ネットワークハンドルも無効になります。 > という記述と矛盾してる気がするのですが。  すいません、PreparationListenNetWork 関数の説明文の方が誤りで、GetLostNetWork関数の 説明文にある通り、明示的に CloseNetWork 関数で接続処理を終了する必要があります。  PreparationListenNetWork 関数の説明文を修正しておきます。
Re: 通信状態の確認 ( No.5 )
名前:ライブラリ使用者 日時:2007/11/03 01:17

明示的にCloseNetWork 関数で接続処理を終了させなければならないのですね。了解しました。

Page: 1 |