SOCK_STREAM ソケットは close(2) インタフェース呼び出しで破棄できます。close(2) の後でも確実な配信が見込まれるソケットの待ち行列にデータが入っている場合、プロトコルは引き続きデータを転送しようとします。期限が来てもデータが配信されない場合、データは破棄されます。
shutdown(3SOCKET) は SOCK_STREAM ソケットを正常に閉じ、両方のプロセスで送信が行われなくなっていることを認識できます。この呼び出しの形式は次のとおりです。
shutdown(s, how);
how は次のように定義されています。
それ以上の受信を許可しない
それ以上の送信を許可しない
それ以上の送受信を許可しない