Microsoft MVP성태의 닷넷 이야기
outofmemory in 32bit [링크 복사], [링크+제목 복사],
조회: 12963
글쓴 사람
유지킴 (jinsw1081 at naver.com)
홈페이지
첨부 파일
[123.PNG]    



메모리를 너무 많이 잡아먹어서 outofmemoryexception 오류가 너무나는데요.
여기서 해당 오류관련 포스팅을보고 여기에다가 질문하는게 좋겟다 싶어서 올립니다.

오픈 소스를 가지고 프로그램드는 학생입니다. (연구실과제) 만들고 있습니다..
알고보니 오픈소스 프로젝트가 32bit 엿습니다.
그래서 프로그램에서 다이콤 파일을 로드할 때에 해당 오류가납니다.

첨부파일 처럼 해당 엄청나게 리소스를 먹는데 실제적으로 다이콤을 사용하기위해서 가져왔던
dll 파일들 내부에서 저 파일들이 여러번 로드가 되던지 아니면 뭔가 문제가 생긴듯
(https://github.com/ClearCanvas/ClearCanvas/blob/master/Dicom/DicomFile.cs)
이게 또 재밌는게 32bit로 빌드가 된 파일들이라서 64비트로 전환하지 못해서 최대 메모리 2gb의 벽을 넘지 못하고 있는데

지금 outofmemory를 해결 할 방법을 찾고 있습니다. 사진에서 보이 듯이 내부 데이터들이 엄청나게 데이터를 많이 사용하고잇습니다.
(실제로 파일을 로드 한 파일크기는 350mb 정도인데 메모리는 2gb 에서 이미 최대를 잡아먹음)

두서없는 설명이였지만 정리하자면

1. 프로젝트를 만드는데 outofmemoryexception 오류가 뜹니다.
2. 해결방법을 물어보는건 무리인것같고 outofmemoryexception 오류가 어떻게 뜨는 건지 설명해주실수 있을까요?
   제가 알기론 c# 은 GC를 통해서 쓸데없는 메모리를 처리 한다고 들었는데 하지만 제 프로그램에서는 그경우가 아닌것같습니다.








[최초 등록일: ]
[최종 수정일: 12/24/2021]


비밀번호

댓글 작성자
 



2021-12-24 10시28분
OOM 예외가 발생하는 것은 말 그대로 더 이상 할당할 수 있는 (물리적으로든, 논리적으로든) 메모리 공간이 부족한 것입니다. 당연히 라이브러리 내에 버그가 있다면 이를 수정하면 되겠지만, 버그가 아닌 순수하게 메모리를 소비하는 경우라면 GC 할아버지가 와도 답이 없습니다.

파일 크기가 350MB라고는 하지만, 인코딩된 경우라면 10:1이나 그 이상의 압축이 된 데이터일 수 있는데 당연히 디코딩하는 과정에서 2GB 제한을 가볍게 넘길 것이므로 단순히 파일 크기로 판단할 것은 아닙니다. 물론, 라이브러리가 비효율적으로 메모리를 사용해 디코딩하는 경우라면 그런 부분을 개선하면 해결할 수는 있을 것입니다.

그나저나, "오픈 소스 프로젝트가 32bit"라고 언급하셨는데, 그 오픈 소스가 ClearCanvas를 의미하는 건가요? 대충 봐도 그 프로젝트는 AnyCPU를 지원하는 듯한데, 혹시 다른 프로젝트 의존성이 있는 건가요?
정성태
2021-12-24 05시33분
[dbwlzla] 감사합니다
[guest]

... 46  47  48  49  50  51  52  53  54  55  56  57  58  [59]  60  ...
NoWriterDateCnt.TitleFile(s)
1183박현수11/20/201318182WCF에서 web.config appsetting 읽기 [1]
1184박현수11/20/201319423    답변글 [답변]: WCF에서 web.config appsetting 읽기 [3]파일 다운로드1
1182유창우11/16/201328434자마린이 궁금... [8]
1181허관11/11/201317880책 샀습니다! [1]
1180김형지11/6/201322269안녕하십니까. 프로그램이 실행되지 않아 여쭙고자 합니다ㅠ [1]파일 다운로드1
1179이민석11/4/201322272[긴급질문] [in,out] 배열을 C# 에서 C/C++ 로 넘기는 방법 - 두번째 이야기 관련 질문.. [6]파일 다운로드1
1178박진영11/1/201321542[급질문] IIS 하위 가상폴더 구성 문의 [4]
1177Jeon...10/28/201318041안녕하세요~ 어머니께 물어서 사이트를 찾아왔어요 [2]
1176김태훈10/25/201318258AxWebBrowser에 대해 질문드립니다. [1]
1175서경희10/20/201323179netscape 지원이 되지 않는다는 문구.. [2]파일 다운로드1
1174임동찬10/16/201322513프리징 현상에 대한 고민 [5]
1173김재영10/8/201317036인터페이스에 대해 기초적 질문이 있습니다. [2]파일 다운로드1
1172박진영10/2/201320081웹사이트 연결시 AJAX 어셈블리 오류 문의드립니다. [5]파일 다운로드1
1171링거8/30/201328382ClickOnce 업데이트 문제. [4]
1170임동찬8/28/201319351비동기적 이벤트 핸들링 방법 [2]
1167나종식8/20/201318256win7 에서 LSP 가 DNS Client 에 인젝션 안되는 문제 [6]
1165임동찬8/19/201317596오류 발생시 로깅 문제.. [3]
1164박철8/19/201318275모바일 게임서버를 작성 하려면 무엇부터 시작하여야 하나요? [2]
1163안연준8/2/201317646음... 안녕하세요 ^^ 윈도우즈 폼에 대해서 잠시 물어볼께요 [3]
1162박진영7/23/2013160481개의 PC에서 동일사이트 접속제한을 어떻게 하죠? [1]
1161Ji Y...7/12/201318825안녕하세요? 음성인식 관련해서 질문있습니다, [2]
1160이상식7/12/201319052웹서비스 커넥션 풀 오류입니다. [6]
1159김덕성7/4/201327834C# 마샬링 관련 문의입니다 [3]
1157이상식6/26/201320989빌드시 오류인데 원인을 모르겠네요. [2]파일 다운로드1
1156정환나라6/20/201318452In-Process Side-By-Side 동작 원리는 어떻게 되는걸까요? [3]
1155MD워시퍼6/20/201317424안녕하세요. 한가지 궁금한 것이 있어서 문의를 드립니다. [1]
... 46  47  48  49  50  51  52  53  54  55  56  57  58  [59]  60  ...