重複の可能性:
Linuxでソケットの空のバッファーを送信しますか?
接続しているクライアントにデータを送信するソケットサーバーを作成し、クライアントを再度切断したいと思います。
ノンブロッキングソケットを使用しているので、すべてのデータが少なくとも正しく送信(送信?)されているかどうかを確認する方法がわかりません(つまり、送信バッファーにデータがありません)。クライアントが自分で切断することを保証できないため、接続が不要になった場合は、接続を確立したままにしたくありません。
現在、shutdown()と後でclose()を使用してクライアントをシャットダウンしています。しかし、テストの結果、接続が閉じられる前にクライアントがすべてのデータを受信するとは限らないことがわかりました。
非ブロッキングソケットで接続を閉じる前に、すべてのデータが送信されたことを確認する方法も必要です。私の質問が十分に明確であり、あなたが私を助けることができることを願っています(: