Microsoft MVP성태의 닷넷 이야기
CLR heap 관련 질문 2 [링크 복사], [링크+제목 복사]
조회: 1274
글쓴 사람
여정욱
홈페이지
첨부 파일
 
안녕하세요, 아래 질문에 대한 답변 감사합니다.
https://www.sysnet.pe.kr/Default.aspx?mode=3&sub=0&pageno=0&detail=1&wid=5395
답변 주신 것과 이전 자료들을 학습하다가 추가적인 문의 사항이 생겨서 질문 드립니다.

최초로 1개의 segment가 할당되고 시간이 지나 gen2 메모리가 증가하게 되면,
상대적으로 gen0, gen1의 메모리 공간이 줄어들게 되어 full gc의 빈도수가 증가하게 됨은 이해했습니다.

이때 '프로세스가 필요로 하고 메모리가 허용하면 추가적인 segment가 할당된다'고 아래 포스팅에 나와있는데요,
https://www.sysnet.pe.kr/2/0/1862
새로 추가된 segment에도 gen0, gen1 뿐만 아니라 gen2까지도 모두 관리되어 위와 같은 이슈(full gc 빈도가 증가하는..)가 발생할 수 있는지 궁금합니다.

현재 서버에서 메모리풀을 사용할지를 고민하는 중이라 이런 질문 드리게 되었고,
염치없지만 혹시 메모리풀 관련해서도 조언해주실 부분이 있으면 함께 부탁드리겠습니다.
매번 감사 드립니다:)




donaricano-btn



[최초 등록일: ]
[최종 수정일: 10/15/2020]


비밀번호

댓글 쓴 사람
 



2020-10-15 01시21분
아마도 새로 추가된 세그먼트가 생기는 경우는, 기존 segment에 신규 gen0을 위한 공간이 없기 때문에 늘어나는 것입니다. 그러니까, gen2 개체로 이뤄진 segment들이 쌓이는 형식이 됩니다. (너무 세세한 동작은, 저 역시 windbg를 통해 접근하는 식이라 자세하게 알지는 못합니다. 관련해서는 GC 소스 코드를 분석하면 되겠지만, ... ^^;)

서버에서 메모리풀을 어떤 식으로 사용한다는 것인지 좀 더 구체적인 설명이 있어야 하지 않을까요? 어떤 성격의 응용 프로그램을 만드는 것인지는 모르겠지만, 웬만해서는 메모리 풀까지 만들어야 할 필요는 없을 거라고 조언을 하고 싶습니다.
정성태
2020-10-15 01시28분
[guest] 네 답변 및 조언 감사합니다:)
[손님]

1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5482질문4/13/2021795WPF를 위한 MVVM toolkit 선택과 관련한 문의드립니다. [4]
5480한예지4/5/2021872GetHashCode 질문있습니다! [2]
5479한예지4/4/2021714Equals를 닷넷에서 어떻게 구현했는지 보고 싶을 떄는 어떻게 해야 될까요? [2]
5478갑자기C#3/23/20211345C# Winform에서 TextBox없이 입력 받을 수 있나요? [7]
5477달팽이3/18/2021726c# 도형을 그린후 편집하는 방법이 궁금합니다. [2]파일 다운로드1
5475dimohy3/2/2021901POH가 .NET 5에 추가된 것으로 알고 있습니다. POH가 유용한 경우는 어떤 경우가 있을까요? [1]
5474Syong2/26/2021797사용자 지정 컨트롤 생성시 Invalidate, Update, Refresh의 차이점 [2]
5473한예지2/25/2021777디자인 타임이 뭔지 궁금합니다!! [5]
5472dimohy2/24/2021746등록하지 않고 ocx를 사용하는 `키움`관련 포스팅을 따라가다 질문드립니다. [2]
5471남산2/21/2021892MarshalDirectiveException 에 대한 질문입니다. [1]
5470한예지2/7/2021996yield 질문있습니다!! [2]
5469유호성2/6/2021786Parallel + Task.Run 동시 실행 환경에서 간헐적으로 Task.Run()에서 null이 리턴됩니다. [3]파일 다운로드1
5467heroho2/4/2021852실행 환경에 따른 Thread.Sleep 딜레이 차이 질문 [8]
5466pr1/29/2021902c# winform load시 작업표시줄에 뜨지 않는 현상을 겪으신적이 있으신가요? [4]파일 다운로드1
5465영귤1/28/2021830두 번째 await 부터는 스레드 개수만 늘어나는 것이 아닌가요 [1]
5464민우1/26/2021742C# 빌드시 코드 치환되는걸 확인하는 방법 문의 [2]
5463한예지1/24/20211000Parameters.AddWithValue 와 Parameters.Add 의 차이점이 궁금합니다. [2]
5462C#초보1/22/2021950사용자 정의 메시지 전달이 가능한가요? [2]
5461한예지1/22/2021966AsEnumerable() 메서드 질문 있습니다! [2]
5459한예지1/21/20211123typeof와 GetType의 차이점 질문있습니다. [2]
5458진우1/20/20211239C# DataTable 에 SQL 쿼리문을 실행하는 방법 문의 (LINQ 사용하지 않고) [6]
5456성민1/17/202112099.0 출간 계획이 있으신가요? [2]
5455한예지1/16/20211070교재 194페이지 콜백메서드 질문 있습니다! [5]
5454한예지1/15/20211047교재 208쪽 질문....있습니다... [3]
5453안녕하세요1/15/20211342C# dll 파일을 C++에서 사용 시 memory leak 문제 [2]파일 다운로드1
5452예지1/15/20211116var를 사용할 수 없는 이유가 궁금합니다! [3]
1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...