Microsoft MVP성태의 닷넷 이야기
안녕하세요 wpf 공부중인데 질문있습니다. [링크 복사], [링크+제목 복사],
조회: 14576
글쓴 사람
세퉁
홈페이지
첨부 파일

안녕하세요! wpf 공부중에 막히는 부분이 있어서 글 올려 봅니다!

자식창을 100개 생성하는 버튼과
자식창을 모두 종료하는 버튼이 있는 간단한 프로그램을 만들어 봤습니다..

실행은 잘되는데 이상한 점은

처음 프로그램을 실행시킬때 메모리는 58mb 입니다.
후에 자식창을 100개 생성하고 메모리를 봤을 때 107mb가 나옵니다.
다시 자식창을 모두 닫고 메모리를 봤을때 90mb가 나옵니다.

제 생각에는 생성한 창을 그대로 닫았으니 처음 크기였던 58mb로 돌아가야 맞는게 아닌가 싶은데...
여기저기 검색을 해보지만 답을 못찾아 질문 올려봤습니다. ㅠㅠ








[최초 등록일: ]
[최종 수정일: 12/17/2018]


비밀번호

댓글 작성자
 



2018-12-18 12시38분
Application.Current.Windows[1].Close(); 무한 루프로 돌지 말고, 윈도우 인스턴스를 List에 담아서 Close를 호출하는 식으로 바꿔보세요.

Application.Current.Windows[1]로 무한루프를 도는 경우, 어쩌다가 이미 닫힌 윈도우를 다시 닫으려는 시도를 한다는 식의 오류가 발생하는 걸로 봐서 정확하게 동기적으로 순서 처리가 되는 것은 아닌 것 같습니다.
정성태
2018-12-19 09시38분
[세퉁] 답변 감사합니다. 말씀대로 한번에 100개씩 처리해서 그런거 같습니다.

윈도우를 하나씩 만들고 하나씩 종료하는 식으로 만들어서
생성 버튼 100번 클릭후 종료 버튼 100번 눌러서 테스트를 해보니
한번에 100개 처리하는 것보단 메모리를 적게 가지네요!
[guest]
2018-12-26 10시52분
[지나가던] C,C++ 과는 달리 C#은 가비지컬렉터가 메모리를 관리해서 자식창을 닫아도 자식창이 가지고 있던 메모리를 바로 해제하지 않기 때문에
그런거 아닐까요.
[guest]
2018-12-27 10시39분
[세퉁] GC를 강제로 호출 해봤는데도.. 어느정도 메모리는 줄지 않더라구요.

[guest]

... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4831guest5/15/201719772WPF .net 3.5에서 TextBox 한글 문제 [3]
4830초보자5/7/201724188프로그램 비정상 종료 메시지 창 없애는 방법 [4]
4829윤현수4/26/201722662System.Text.Encoding 질문 [1]
4828jaem...4/20/201716923시스템 종료시 block 함수 xp 지원가능한 방법 질문 [2]
4827ds4/13/201719025매서드 정의로 이동시 [메타데이터에서]에서 라고 나오는 것은 뭔가요? [1]
4826김솔지4/11/201716209CxImage 문자 출력 [1]
4825플메4/10/201715927덱스트 업로드 하는데 구성요소 서비스에 엑셀이 안뜨네요..ㅜㅜ [1]파일 다운로드1
4824김상경4/9/201715525win7에서 vb6.0을 이용해서 프로그램을 만들었습니다.(제가 만든건 아니고 옆 동료가 만들었습니다.) [1]파일 다운로드1
4823조상현3/28/201716512windows event log 에 대한 정보는 어디서 얻을 수 있을까요? [1]
4822부우3/24/201718636글수정이 안되어 다시올려드립니다ㅠ [12]파일 다운로드2
4821부우3/22/201733220파일이나 어셈블리 중 하나를 로드에러 좀 봐주세요 [9]파일 다운로드1
4820듀이3/20/201716876오차 없이 동시에 명령을 보내게 가능한가요? [2]파일 다운로드1
4819popo3/20/201718729C# sslstream 사용시 Cipher List 설정 [3]
4818부우3/16/201728733DllImport 사용시 진입점을 찾을수 없습니다 [2]
4817yun3/15/201717472서피스프로4의 HYPER-V로 윈도우7을 깔았는데... [1]
4816부우3/15/201719920C++ DLL함수 사용 질문드립니다 [10]
4815김지용3/14/201716005.net core linux 오류 [2]
4814김솔지3/13/201716810인쇄 시 , 출력화면을 이미지 파일로 저장하고 싶습니다. [1]파일 다운로드1
4813spow...3/8/201718566멀티 스레드 환경에서 처리하여야 할 목록을 효율적으로 사용하는 기법 질문 드립니다 [2]
4812popo2/23/201718913.NET Window ClassName 변경 질문 드립니다. [1]
4809힘찬도약2/15/201721890C# 가상 시리얼 [4]
4808이길용2/9/201719868WCF 외부 접속 관련해서 질문드립니다ㅠ [1]
4807헬조선식...2/8/201727176WPF의 속도에 대해서 궁금합니다. [3]
4803헬조선식...2/7/201720132WPF로 메신져 메세지 박스 구현 문의 [2]
4802spow...2/6/201717200특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은? [7]
4804spow...2/7/201716592    답변글 [답변]: 특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은?
... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...