작성
·
301
0
클라이언트에서 보낸 데이터가 다 도착하지 않았을 때 다음 데이터가 올 때까지 기다린 후 처리한다고 말씀하셨는데, 이 부분이 코드 어디에 구현되어있는건가요...?
위에 있는 코드를 나름대로 해석해보니
1. OnWrite()는 _recvArgs.Buffer에 들어있는 데이터만큼 _recvBuffer의 _writePos를 증가시킨다.
2. OnRecv()한 데이터(_recvArgs.Buffer에 들어있는 데이터)의 크기를 processLen에 담는다.
3. processLen의 크기만큼 _readPos를 증가시킨다.
라고 이해했는데,
클라이언트에서 보낸 데이터가 완전한지 불완전한지 딱히 판단하는 부분은 없어보이고 그냥, [1.데이터가 들어온만큼 _writePos를 증가시킨다 2. 처리한다 3. 처리한만큼 _readPos를 증가시킨다]를 실행시킨거같아서요!
아 그렇군요! 감사합니다~~