현재 문제의 원인을 찾으려고 시도하고 있습니다. 우리의 예외 처리가 부족하므로 오류의 출처를 추측합니다. 방법은 XmlTextReader 개체를 반환하는 경우 여기에 내 질문, 그 개체가 try/catch/finally 줄 바꿈 .close() 메서드를 마지막으로 래핑 된 경우 null 될?XmlTextReader 개체를 반환하면 .Close()를 호출 할 수 있습니까?
그렇다면 리소스를 올바르게 처리 할 수있는 방법은 무엇입니까? .Clone() 또는 .Copy() 메서드가 없다는 것을 알고 있습니다.이를 수행하는 다른 방법이 있습니까? XmlTextReader 및 XmlReader 개체를 삭제해도됩니까?
감사
감사합니다. 그렇다면 XmlReader 및 XmlTextReader에서 .Close()를 호출하는 것에 신경 쓰지 마십시오. 그것이 응용 프로그램에서 지속적으로 호출되는 경우 결국 메모리 누수가 발생하지 않을까요? – ganders
사용법에 따라 답변이 업데이트되었습니다. IDispsable을 구현하는 모든 객체에 Dispose (닫을 때도 같이 사용)를 호출합니다. 그러나 완료 한 후에는 적절한 시간에 완료해야합니다. 나는. 당신은 이미 처리 된 객체를 반환하기 위해'XmlReader.Create()'를 expcet하지 않습니다. 그렇습니까? –
동의하지 않습니다. MSDN을 보면 Close 또는 Dispose에 의해 "Object Disposed Exception"이 발생하는 예외는 없습니다. 그래서 그것은 사실이 아닙니다. Close를 호출 할 때 아무런 부작용이 없다. – Darkonekt