Q&A

  • 대용량 스트링 패킷손실
안녕하세요..
초보 델피언입니다..
다른게 아니라 감을 못잡아서 그런데요...

수신 할부분이... 용량이 큰 String 입니다 4메가 이사될수 도 있구요...
이건 수신 소스입니다..
살펴봐주세요...
DataSize:= Main.Form1.IdTCPClient.ReadFromStack(True,50,False);


   If DataSize = 0 then Begin
     Result:= '';
    Exit;
   End;

  if DataSize <> -1 then
  begin

  end;
  GetMem(Data, DataSize);
  ssData:= TStringStream.Create('');

  Try
    Main.Form1.IdTCPClient.ReadBuffer(Data^, DataSize);
    ssData.Write(Data^, DataSize);
    ssData.Position:= 0;
    Result:= ssData.DataString;
  Finally
    FreeMem(Data);
    ssData.Free;
  End;

작은용량 의 스티링은 문제가 없는데..  몇메가 씩되는것은 손실이남니다..
참고로 서버는 자바 구요 클라이언트 는 델파이입니다..

자바에서 송신되는것은 스트링 으로 송신합니다
0  COMMENTS