send と recv の使い方と送信バッファ溢れについて。 manpage Manpage of SEND Manpage of RECV SEND non-blocking の場合。 send が失敗して外部変数 errno に EINTR が設定されている場合は、再度送信を試みる必要がある。 データをソケットの送信バッファに入れることが出来ない場合、外部変数 errno に EAGAIN か EWOULDBLOCK が設定される。 いつデータが送信できるようになるかを知るために select などのシステムコールを使うことが出来る。(後述:送信バッファ溢れ) 以下、ソースコードから抜粋した send のサンプル。 int res = 0; char* p = buffer; // 送るデータ size_t len = buffer_size; // 送るデータのサイズ while(