2009-06-12 1 views
1

ObjC 컨트롤러 개체가 있습니다.코코아 컨트롤러 - 처리 완료를 알리는 모범 사례?

객체의 ALLOC/초기화 후, 나는 그것이 비동기 적으로 일을 할 수 :

[myObject에 doSomeThingsOverTime]

이 방법은 움직이는 물체를 설정 한 다음 즉시 반환합니다.

질문 : myObject를 릴리스하고 완료된 작업에 반응 할 수 있도록 나중에 결과를 알리는 가장 좋은 방법은 무엇입니까? 나는 관찰/게시 알림을해야합니까? 또는 객체에 콜백 메소드를 제공합니까? 아니면 다른?

답변

2

나는 개인적으로 알림 센터 경로의 팬입니다. 두 명 이상의 관찰자가 참여할 수 있습니다 (귀하와 관련이있을 수도 있고 없을 수도 있음).

대리인 경로도 유효하며 프레임 워크에서 상당히 자주 사용됩니다.

개인적인 취향에 달려 있다고 생각합니다. 자신의 코드 인 경우 특정 상황에 가장 가독하고 간단한 것을 찾아야합니다. 나는 하나가 다른 것보다 다소 유효하다고 생각하지 않는다.

+0

감사합니다. 알림을 계속 사용하겠습니다. 건배. – SirRatty

1

NSOperation 및 NSOperationQueue 클래스를 살펴 보셨습니까? NSOperation 객체의 isFinished를 관찰하면 완료 될 때 알림을받을 수 있습니다.