質問: ソケットのパケットは二股に分かれていましたか? プロセスAとプロセスBがあり、AがTCPクライアント、BがTCPサーバー、AがBに接続していて、Aのソケットのファイル記述子がfd1(A)で、ファイル記述子がBはfd2です。この時点で、プロセスAは、Cという名前の子プロセスをforkし、fd1(C)もfd1(A)と同じファイルテーブルを指しています。 、AまたはCは、メッセージを受け取るでしょうか?メッセージはfd1(A)に配信されますか?またはfd1(C)?またはランダムに?ありがとうございました。
回答: メッセージは最初に読み取るプロセスに移動します。 Cがビジー状態で `read()`または `recv()`を実行すると、Aはデータを取得し、その逆も同様です。 AとCが同時に `read()`または `recv()`を実行すると、結果は未定義です。