Microsoft MVP성태의 닷넷 이야기
글쓴 사람
나그네
홈페이지
첨부 파일
 

안녕하세요?

GC.Collect(GC.MaxGeneration);
GC.WaitForPendingFinalizers();

SetProcessWorkingSetSize()
이용해서 WorkingSet을 반환하는 것은 잘 되는데,

Commit(Virtual Memory) 에서 이미 커져버린 메모리를
해제하거나 반환하려면 어떻게 해야 하는지 도움 부탁드립니다.








[최초 등록일: ]
[최종 수정일: 12/8/2011]


비밀번호

댓글 작성자
 



2011-12-09 10시08분
Commit 된 메모리를 해제하거나 반환하는 것은, 해당 코드나 데이터가 필요없어야만 가능합니다. 개발자 수준에서는 자신이 할당한 메모리 이외에는 해제/반환이 불가능합니다. (무슨 기준으로 다른 사람이 할당한 메모리를 반환할 수 있겠습니까?)

일례로, 프로그램에서 mscorlib.dll 을 내부적으로 쓰고 있는데 그것 때문에 메모리가 커졌다고 해서 임의로 해제/반환할 수 없는 것입니다. ^^
정성태

NoWriterDateCnt.TitleFile(s)