UNIXドメインソケットがオーバーフローする可能性がありますか?

UNIXドメインソケットがオーバーフローする可能性がありますか?

socatを使用してUNIXソケットを作成してデータを送信しますが、ソケットに接続されている他のsocatインスタンスがない場合はどうなりますか?

大量のデータがUNIXソケットに書き込まれていますが、読み込まれないとどうなりますか?バッファオーバーフローが発生しますか?リングバッファですか?

答え1

Unixソケットは安定しています。リーダーが読まない場合、作成者はブロックされます。ソケットがデータグラムソケットの場合、各書き込みは読み取りとペアになります。ソケットがストリームソケットの場合、カーネルはライターとリーダーの間にいくつかのバイトをバッファリングできますが、バッファがいっぱいになるとライターがブロックされます。バッファを読み取る前にリーダが接続を閉じると、データがバッファリングされない限り、データは削除されません。

関連情報