- 281 名前:278 mailto:sage [2007/04/23(月) 01:59:09 ]
- >>280
レスありがとうございます。そういう理論ですか。なるほどです。 ネットワークプログラミングとマルチスレッドが、 初心者なので、実際のプログラミングでどうしたら、 良いのかと思いまして。 Bのプログラミングは、もうちょっと細かく見ると WSAStartup()->socket()->bind()->listen()->accept()->recv()-> B⇔Cのための子子スレッドを呼び出し? ->send()->closesocket()->WSACleanup() ■子スレッドで、_beginthread使っても良いなら、わかりやすくできるんですが、 だめなんですよね? ■WSAStartup()->socket()->bind()->listen()->accept()->recv()-> {B⇔Cの処理 WSAStartup()->socket()->connect()->send()->recv()->WSACleanup()} ->send()->closesocket()->WSACleanup() スレッド使わないで、WSAStartup()2回呼んだら、どうなるんだろうとか、 一回目のWSACleanup()で、A⇔B,B⇔C、両方の接続切れちゃったりしますよね。 とか、いろいろ疑問で。実験して見ようと思うんですが、頭がごちゃごちゃして 難しいです。 ■あとは、はじめからBのプログラミングで、 AがBに接続をして、アクセプトした瞬間に、その親スレッドで、 A⇔B,B⇔Cのやり取りするスレッドを、立ち上げてスレッド間のメッセージで タイミングをはかる方法があるかもしれないですが、スレッド間のやりとりって、 やったときなくて、難しいです。 うまく説明できず、すみません。的外れなこと言ってるかもしれないです。 2番目と3番目の■について、ここに気をつけるなど、アドバイスいただけないでしょうか。 よろしくお願いします。
|

|