은, 다음과 같은 코드가 사용되었습니다마지막으로 사용에 대한 차단 - 다른 컨텍스트 인 마지막으로 발생합니까? 일부 코드 내가 일상적 작업 (그리고 몇 번 쓴)에서
using (StreamWriter sw = new FileWriter(".\SomeFile.txt"))
{
// Perform file IO here...
}
finally
{
sw.Close();
}
나는/마지막으로 C#으로 ... 내가 아는 시도/캐치 알고 있어요 그 문맥이 마침내 작동합니다. "마지막으로 사용"이라는 용어로 Google 검색을 수행했을 때 관련성이 높은 일치 항목을 찾을 수 없었습니다.
이 컨텍스트는 마지막으로 Using 문의 마지막 명령이 실행될 때 Finally 블록의 내용이 실행되는 곳에서 작동합니까? 아니면 내가 (그리고 내가 작업하고있는 코드베이스)이 모든 잘못이있다; 마지막으로 Try/Catch로 제한됩니까? 어쨌든 (종류의)를 using
try
에 닷넷 변환 -
전에 '사용'과 '마지막'조합을 본 적이 없습니다. 왜, Close()를 명시 적으로 호출 할까? – sloth
솔직히 말해서, 이것은 다른 사람들에게서 본 코드입니다. 나는 A) Dispose가 정의되지 않았거나 B) Dispose가 방법에 따라 모든 것을 정리하지 않을 수 있기 때문에 관리되지 않는 리소스 (File IO, DB Connections)에 대한 정리가 수동으로 발생해야한다고 생각합니다. 그 '자원'의 저자는 그것을 구현하기로 결정했다. –