메모리 누수를 조사하는 동안 루프 내에서 테이블에 NewRow()를 여러 번 호출하여 발생했음을 발견했습니다. 그러나 생성 된 DataRow는 테이블 행 모음에 추가되지 않으며 테이블 행 수가 0을 초과하지 않습니다.테이블 NewRow() 메모리 누수가 발생합니다.
내 질문은 새로 만든 DataRow가 Rows 컬렉션에 추가되지 않고 NewRow에서 반환 된 DataRow가 항상 동일한 로컬 변수에 할당 되어도 (따라서 분명히 버려진 경우에도 NewRow가 호출 될 때마다 더 많은 메모리를 사용합니다) 마지막 새로운 행).
코드가 테이블에 추가되지 않는 DataRow를 만드는 이유에 대한 문제를 무시하십시오!
안녕하세요. 스티븐, 저는 그 행이 사용되지 않을 때 왜 메모리를 사용하는지 잘 모르겠습니다. 나는 DataTable의 배경에 어떤 일이 벌어지고 있는지에 대한 좀 더 깊은 정보를 얻었습니다. –