C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[48485] Re:작업관리자의 메모리사용량
열씸! [cappuccino] 1192 읽음    2007-03-21 01:42
StringGrid의 Cells 에 들어가는 데이타는 AnsiString 타잎이죠?
그리드 내에 그림을 그려 넣는 식이 아니라, 해당 스트링이 할당되어 꼬리표가달리는 식이니
메모리가 증가할 밖에요.
서버에서 돌아가는 서비스(혹은 서비스형 응용프로그램)라면,
당연히 서비스를 내렸다 올리는 주기까지는 버틸 수 있는 공간을 계산해 확보하시거나,
특정 범위를 넘어서면 화일로 저장한 뒤 저장된 데이타를 클리어할 수 있는 구조로 만드셔야 하겠죠.
복잡한 처리를 하지 않고, 오래 돌 수 있는 안정적인 서버 프로그램을 작성하고 싶으시다면,
모조리 화일로 쓰고, 화일의 내용을 화면에 그리는(Canvas등에) 구조로 변경하셔야 할 겁니다.

mossmin 님이 쓰신 글 :
: 메모리 사용량에 대해서 너무너무 궁금해서 고수님들께
: 조언을 구합니다.
: 서버에서 돌아가는 프로그램을 만들었는데요.
: 사용자측에서 계속 메모리가 증가한다는 연락을 받았습니다.
: 프로그램 상에는 new를 하는 부분은 TIniFile사용시만 사용했는데요..
: 그래서 제가 작성한 프로그램을 간소화해서 첨부한 소스를 만들었습니다.
:
:
: 첨부한 소스에는 10초에 한번지 아래의 처리를 하도록 타이머를 설정했습니다.
: void __fastcall TForm1::Timer1Timer(TObject *Sender)
: {
:     char Buf[8012];
:     for( int i = 0; i < StringGrid1->ColCount; i++)
:     {
:         for( int j =0; j<StringGrid1->RowCount; j++)
:         {
:             StringGrid1->Cells[i][j] = IntToStr(i) + "," +IntToStr(j);
:
:         }
:     }
: }
:  아래의 내용의 시간별 작업관리자의 메모리 사용량을 적어 보았습니다.
: 이벤트와 관계가 있어 보이기도 하구요 도통 모르겠습니다.  조언 부탁드립니다.
: 17:13 (6,464)  17:15(6,508) 17:16(6,520) 17:19(6,524)프로그램 폼의 빈부분 마우스 클릭 17:19(2,080)프로그램 최소화
: 17:20 (3,084) 프로그램 표준모드 17:22(3,168) 17:23(3,172) 17:25(3,184) 17:26(3,188)......

+ -

관련 글 리스트
48473 작업관리자의 메모리사용량 mossmin 1190 2007/03/20
48498     Re:작업관리자의 메모리사용량 김태선 1365 2007/03/21
48499         그럼 스트링 클래스 특성... mossmin 1215 2007/03/21
48512             Re:그럼 스트링 클래스 특성... 김태선 1086 2007/03/21
48485     Re:작업관리자의 메모리사용량 열씸! 1192 2007/03/21
48491         Re:Re:작업관리자의 메모리사용량 mossmin 1181 2007/03/21
48497             다시한번 봐주세요 mossmin 1009 2007/03/21
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.