SO_LINGER
글쓴이: 익명 사용자 / 작성시간: 화, 2002/08/06 - 10:29오전
#include
#include
#include
#include
#include
#include
int main(){
int sockfd,optlen,ti;
struct linger ling;
if( (sockfd = socket(AF_INET, SOCK_STREAM, 0))< 0){
perror("socket error");
}
optlen = sizeof(ling);
if( getsockopt(sockfd,SOL_SOCKET, SO_LINGER,
(struct linger*)&ling,&optlen) < 0){
perror("getsockopt error");
}
ti = ling.l_linger;
printf("SOCK LINGER TIME = %d %
d\n",ti,ling.l_onoff);
exit(0);
}
이렇게 하니까 링거 타임이 0으로 나오던데요..또한 onoff도 0 나오고여
리눅스는 LINGER 꺼놓았단 말인가여?
Forums:
Re: SO_LINGER
디폴트가 꺼놓은거로 알고 있습니다.
즉 close() 하면
send buffer 에 있는 거 모두 보내고..
recv 는 닫겠죠....
바로 즉시 return 하고요..
흠 자세한건 UNP ( unix network programming ) 책 참고하세요.
Re^2: SO_LINGER
넵 그렇군여....
감사합니다...
댓글 달기