이 메소드는 소켓을
통해 데이터를 전송합니다.
시그니처int RiCOSSocket_send (RiCOSSocket *const me,
const char *buf, int bufLen);
매개변수me
RiCOSSocket 오브젝트입니다.
buf
전송된 데이터가 포함된상수 문자열
버퍼입니다.
bufLen
버퍼 길이입니다.
리턴값이 메소드는 다음 값 중 하나를 리턴합니다.
- 0 - 오류가 있습니다.
- n - 전송된 바이트 수입니다.
예제
int RiCOSSocket_send(RiCOSSocket * const me,
const char * buf, int bufLen)
{
int bytes_writ = 0;
int n;
if (me==NULL) return -1;
while (bytes_writ < bufLen) {
n = send(me->theSock, (char *)(buf + bytes_writ),
bufLen - bytes_writ, 0);
if (SOCKET_ERROR == n) {
if (errno == EINTR) {
continue;
}
else {
return -1;
}
}
bytes_writ += n;
}
return bytes_writ;
}