문서 기반 응용 프로그램이 있고 하위 클래스가 NSDocument
이고 필요한 방법을 제공하지만 내 문서는 광범위한 정리 (외부 작업 등을 실행해야 함)가 필요합니다. 이것을 넣을 수있는 가장 좋은 곳은 어디입니까? 나는 다음과 같은 몇 가지 방법을 시도 :NSDocument 하위 클래스에 대한 정리 코드는 어디에 넣으시겠습니까?
close
close:
canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo
dealloc
내가 dealloc
에 넣어 경우, 때때로 전화를 도착 다른 시간을 그 않습니다 (Command + Q를 눌러 내 문서의 할당 취소를 우회하는 것 같습니다). 그러나이 코드는 fai없이 호출됩니다. 유혹 (프로그램이 예기치 않게 종료되지 않는 한).
전적으로 정확하다고 생각하지 않습니다. shouldCloseSelector는 문서를 닫을 준비가되었거나 (예 : 성공적으로 저장 한 경우) 호출되기 때문에 shouldCloseSelector에서만 정리를 수행해야합니다. 이 canClose 메소드가 호출되는 것은 문서가 실제로 닫힐 것임을 나타내지는 않습니다 (예 : 저장이 실패 할 수 있음). – Joel