2016-03-30 8 views
0

ソケットに関する質問があります。私は基本的にサーバーとクライアントの関係を以下に記載する必要があることを理解しています。しかし、私の質問は、サーバがそのような場合にコーディングがどのようになるべきかを書き直す必要がある場合、クライアントがaccept()などを必要とするかどうかです。ソケットサーバーがクライアントに書き戻します

サーバー側

socket(...); 
getaddrinfo(....); 
bind(...); 
listen(...); 
accept(....); 
read(....); 
//what if server needs to write to client 

クライアント側

socket(...); 
getaddrinfo(....); 
connect(...); 
write(....); 
//what if client needs to read 
+0

質問の最初の5回の呼び出し(サーバー側)または3回の呼び出し(クライアント側)の後、接続はどちらの側がサーバーであるかを忘れて、対称的に動作します。どちらの側も読み書きできます。 – immibis

答えて

1

番号サーバー<>クライアント途切れ全二重です。

サーバは、read()呼び出しで使用されるクライアントソケット<と同じサーバに書き込むことができます。同様に、クライアントはwrite()呼び出しと同じソケットから読み取ることができます。

関連する問題