|
클라이언트A 인터넷 속도를 4KB정도로 잡고.. 클라이언트B와 서버는 광랜 속도 그대로 설정했습니다..
서버에서 A,B순대로 200KB 짜리 패킷을 전송했습니다..
그러자 A에 WriteBuffer 할 때 수십초의 대기시간이 발생하더군요.. B의 경우는 순식간에 전송이 끝났고요..
암튼 문제의 A때문에 멀쩡한 B의 패킷 받는 시간이 엄청 느려진거지요..
극단적인 테스트 환경이긴 한데, 암튼 서버를 만들었는데, 이런 현상이 생기면 안될 것 같은데요..
그래서 각 유저별로 타이머 변수를 만들어서 WriteBuffer직전에 User->Timer = timeGetTime() 하고...
TTimer를 하나 만들어서 안에다 timeGetTime() - User->Timer 한 값이 5초 정도를 초과하면 강제로 Disconnect()시켰는데, 이것도 금방 되지는 않고 지연되는 시간이 있더라고요..
뭐 좋은 방법이 없을까요?
|