연결이 없으면 30초후 프로그램을 종료...
새로운 접속 시도가 없거나 전송이 없다면 30초 후에 프로그램을 종료시키려고 합니다
제가 생각한 방법은
특정 행동 발생시에(소켓을 accept 하거나 wsarecv를 받은 경우)
전역변수 DWORD dwLastActionTime에 GetTickCount()를 저장하고
타이머로 1초마다 이를 확인하여
dwLastActionTime +3000/*30초*/ < GetTickCount()
이면 종료시키려고 합니다
그런데 왠지 이 방법이 비효율적인 것 같고
GetTickCount를 쓰면 프로그램을 킨 후 시간이 지나
DWORD값을 벗어나면 오버플로우가 발생합니다
더 좋은 방법이 없나요?
그러다가 중간에 연결이 들어오면 다시 전역변수를 0으로 리셋.