자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

Delphi TJSONArray Data Clear 문의

2019.11.29 17:16

늦바람 조회 수:386

안녕하세요.

 

JSON 형식의 데이터를 소켓으로 주고 받는 모듈을 개발 중입니다.

 

데이터를 주고 받을 때 여러건의 데이터를 JSONArray에 담아서 보관하고 있다가 

일정 조건이 만족되면 한꺼번에 보낼려고 합니다.

 

기존엔 TList를 이용하였었는데

데이터 모듈 생성시에 TList를 생성하고 사용하다가 데이터 모듈 Destroy에서 Free시켜주는 구조로 되어 있습니다.

 

이것을 JSONArray를 사용하여 똑 같이 하려다보니 데이터를 소켓으로 전송한 다음 보낸 데이터를 제거해야 하는데

데이터를 한번에 지울 수 있는 Clear Procedure가 존재하지 않을 뿐더러 for loop를 돌려 Remove function을 사용하면

문제가 없는 것 처럼 보이지만 JSONArray에 Add 시킨 Object들은 하나도 제거가 안되어 ReportMemoryLeaksOnShutdown

리포트에 무수히 많은 Memory Leak이 보고됩니다.

 

오버헤드가 많더러도 매번 JSONArray 생성 / 제거 과정을 반복해야하는지

이에 대한 해결책은 없는지요.

 

구글링을 아무리 해보아도 간단한 사용법만 나와있지 데이터를 클리어 하는 방법은 어디에도 나와있지 않아서

문의 드려봅니다.

 

감사합니다.