レス書き込み
スレへ戻る
写
レス栞
レス消
Javaで作るスタンドアローンゲーム
PC,スマホ,PHSは
ULA
べっかんこ
公式(スマホ)
公式(PC)
で書き込んでください。
名前
メール
引用切替:
レスアンカーのみ
>>358 > ブロッキングの場合は通信相手1人ごとに受信用スレッド1個と送信用スレッド1個を作って、それに通信処理を全部まかせるのがいい > 相手側に何があってもブロックするのはそこだけで済む > 何か送信したいときは、その相手用の送信キューに情報を詰め込んで、送信スレッドに送信してもらう > 受信の方はそのまま受信スレッド上で処理してもいいが、スレッド間の同期が心配なら、受信した情報をメインスレッドの処理キューに積んでメインスレッドに処理してもらってもいい > もちろん各キュー自身は同期しなければならないが、LinkedBlockingQueueでも使っとけば心配なかろう > 欠点は通信相手が増えすぎるとスレッドが増えすぎることだが、まぁ100くらいは大丈夫じゃない? > > ノンブロッキングの場合は一箇所で全ソケットの送受信の面倒を見ることになる > 基本的には Selector#select を回し続け、個々のソケットがそれぞれ受信可能になっていれば受信し送信可能になっていれば送信するわけだが、 > 受信したいときに受信したい量が受信できるとは限らないし、送信したいときに送信したい量が送信できるとも限らないので、 > ブロックさせずに1スレッドですべてを回すためには送受信共にバッファ管理が必要になる > 相手に何か送信したいときは、その相手用の送信バッファにデータを詰め込んでselectのループに戻り、 > ソケットが送信可能な状態になったときに送信できる量ずつ送信する(そしてまたselectのループに戻る) > 受信の方も、必要な量のデータが受信バッファに溜まるまでselectのループを回しておき、 > じゅうぶん溜まったら受信バッファから必要量のデータを取り出して処理する感じ? > 通信相手が増えてもスレッド数を抑えられるのが利点だが、実装は面倒い
ローカルルール
SETTING.TXT
他の携帯ブラウザのレス書き込みフォームはこちら。
書き込み設定
で書き込みサイトの設定ができます。
・
ULA
・
べっかんこ(身代わりの術)
・
べっかんこ(通常)
・
公式(スマホ)
・
公式(PC)[PC,スマホ,PHS可]
書き込み設定(板別)
で板別の名前とメールを設定できます。
メモ帳
(0/65535文字)
上
下
板
覧
索
設
栞
歴
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.008s