- - PR -
同期・非同期UDPソケットプログラミング
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-11-09 16:06
私は、sendto,recvfrom,bind関数を用いてUDPソケットプログラミングを行っています。
同期・非同期についてですが、コンソール上でプログラミングを行っている場合、同期・非同期について気にする必要がないのでしょうか? テキストには、ウィンドウ等を作成するときに、acceptやsendto関数がブロッキングを起こすため、同期ではなく非同期にすべきと書いてありました。 また、私はスレッドプログラミングを行っています。テキストに、非同期にすることで高速に転送可能と書いてありました。この場合も、ボタンやダイアログボックス等のwindowsプログラミングを前提にした話なのでしょうか? よろしくお願いします。 | ||||||||
|
投稿日時: 2006-11-09 16:38
いいえ
いいえ ただし現実に非同期にする事で恩恵を受ける事が出来るか否かは別の問題です。 例えば数百のクライアントと同時に送受信を行うプログラムで同期通信していたら、他のクライアントを待たせてしまいますよね。数百のスレッドを立てれば待たせないかもしれませんが、そんな設計はスラッシング等を起こす危険があるので、現実的ではありません。こんな状況では非同期にするメリットは大きいでしょう。 |
1