본문 바로가기

지식/Network

linger 함수

 

LINGER

 

struct linger {
        u_short  l_onoff;
        u_short  l_linger;
}


Members

l_onoff

SO_LINGER를 활성화 하기위해서, 어플레케이션은 l_onoff 멤버를 0이 아닌 값으로 설정하고, l_linger 멤버를 0으로설정하거나, 원하는 타임아웃 값(초 단위로)을 설정해야 한 후, setsockopt 함수를 호출해야 합니다. SO_DONTLINGER를 활성화 하기위해서(즉, SO_LINGER를 비활성화 한다는 얘기겠죠) l_onoff 멤버를 0으로 설정하고, setsockopt 함수를 호출합니다. 비동기 소켓에서 0이 아닌 타임아웃 값을 가지고 SO_LINGER를 활성화 하는 것은 바람직하지 않다는 점을 염두해 두기 바랍니다.

SO_LINGER를 활성화 하는 것은 또한 SO_DONTLINGER를 비활성화 시킵니다. SO_DONTLINGER가 비활성화 된다면(즉, SO_LINGER가 활성화 된다는 의밉니다.) 타임아웃 값은 지정되지 않습니다. 만약 이전에 타임아웃 값이 소켓에 적용되었다면, 타임아웃 값은 서비스 프로바이더에 의해서 원래 상태로 복원되게 됩니다.

See Also

overview, setsockopt