No.2ベストアンサー
- 回答日時:
サーバのOSについての記述がないので、unix系とみなして回答します。
APを以下のように修正してください。
accept()したあと、fork()します。
親はaccept()で得たディスクリプタをclose()して再度accept()ループに入ります。
子はbind()で得たディスクリプタをclose()して、あとは1体1の場合と同様に通信を開始し、処理が終了したらexit()します。
fork()によって、接続を待つプロセスと受け付けた接続を処理するプロセスに別れることで、複数の接続を同時に受け入れ可能なサーバAPを作成します。
MTによる方法もありますが、まずはfork()をマスターしてください。
No.1
- 回答日時:
それができないと、”サーバの指定のポートに接続”ってのができなくなるのでは?
httpやftp等のポート指定がなりたたなくなりますよ。
プログラム的には、サーバ側ではマルチスレッドかポーリングで、複数のクライアントからの要求を待つことになります。
この回答への補足
ありがとうございます。
例えば、サーバ日付取得ソケットAPを作成した場合(ポートを5000番)
サーバデータ受信APを作成するとすると、この時のポートは違うポートで行うのですか?
あともう1つ質問なのですが、ftpを使用しないで、
ポートを生成して、ファイルごとsend等のAPIで、
相手に送信できるのですか?
それとも、ファイルオープンして、データを読み込んで、
送信しなければダメですか?
違う質問もしてすみません。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
ソケットを用いた1対多通信について1
Java
-
UDP通信する時に、相手にどうやって自分のポート番号を教える?
Java
-
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
-
4
同一ポート番号ソケットOPENの制限について
Mac OS
-
5
ソケット通信で同時受信の制限?
C言語・C++・C#
-
6
SocketのSend関数でのCLOSEの検知 [Linux]
C言語・C++・C#
-
7
NetworkStreamからのRead()で、処理が止まる(C#)
C言語・C++・C#
-
8
C#とTCP/IPを利用したサーバープログラム(複数クライアント対応)
その他(プログラミング・Web制作)
-
9
Windowsでのfork方法
C言語・C++・C#
-
10
(マルチスレッド)_beginthreadexに複数の引数を渡す
C言語・C++・C#
-
11
c# ネットワークプログラム
C言語・C++・C#
-
12
ネットワーク切断を検出するには?
C言語・C++・C#
-
13
deleteで開放するとエラーになる原因がわからない
C言語・C++・C#
-
14
同じLAN内パソコンのIPアドレス、もしくはホスト名の自動取得方法
C言語・C++・C#
-
15
recv関数でフリーズしてしまう
C言語・C++・C#
-
16
C++言語で、構造体のコピーは可能(しても良い)のでしょうか?
C言語・C++・C#
-
17
UDP通信におけるbind関数について
C言語・C++・C#
-
18
TCP/IP通信時のサーバーからの受信
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
TCP/IP通信時のサーバーからの受信
-
recv関数でフリーズしてしまう
-
ソケットのrecvの戻り値が0
-
エクセル VBA でのCOMポート...
-
カードリーダーのデータ受信方法
-
UdpClient 送信元のIPアドレ...
-
Socket通信の0バイト受信について
-
UDPの宛先ポートと送信元ポート...
-
UDP通信におけるbind関数について
-
Winsockで接続待ちタイムアウト...
-
Connectエラーが出てしまう・・...
-
WinSockを用いたUDP送受信ソケ...
-
UDP通信する時に、相手にどうや...
-
ソケットとそれに基づくストリ...
-
ソケットのクローズについて
-
ソケット通信 同じポート番号...
-
winsockでファイル転送
-
Winsockを使わずにVBでSocketを...
-
異なる言語間でのソケット通信...
-
マルチスレッドプログラミング...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TCP/IP通信時のサーバーからの受信
-
エクセル VBA でのCOMポート...
-
Winsockで接続待ちタイムアウト...
-
UDP通信におけるbind関数について
-
VB6のwinsockでconnectできない
-
ソケットのrecvの戻り値が0
-
ソケットのクローズについて
-
UDP通信する時に、相手にどうや...
-
Socket通信の0バイト受信について
-
recv関数でフリーズしてしまう
-
ソケット通信 同じポート番号...
-
CreateFile関数でCOMポートが開...
-
Connectエラーが出てしまう・・...
-
ソケットでクライアントのipア...
-
ソケットを用いた1対多通信につ...
-
UdpClient 送信元のIPアドレ...
-
WinSockでの通信プログラムがう...
-
SIPがNATを越えられない理由
-
ソケットプログラミングに関す...
-
相手のIPアドレスを取得する方法
おすすめ情報