내 앱에서 일련의 다운로드 및 데이터베이스 쓰기 작업을 수행해야합니다. 내가 사용하고 NSOperation
와 NSOperationQueue
동일합니다.
이것은 애플리케이션 시나리오입니다.
- 장소에서 모든 우편 번호를 가져옵니다.
- 각 우편 번호에 대해 모든 집을 가져옵니다.
- 각 집에 대해 주민 정보를 가져옵니다.
말했듯 NSOperation
이 각 작업에 대해 정의했습니다 . 첫 번째 경우 (Task1)에서는 모든 우편 번호를 가져 오기 위해 서버에 요청을 보냅니다. 의 대리인 NSOperation
이 데이터를받습니다. 이 데이터는 데이터베이스에 기록됩니다. 데이터베이스 작업이 다른 클래스에 정의되어 있습니다. 에서 NSOperation
클래스 I 데이터베이스 클래스에 정의 된 쓰기 함수에 대한 호출을하고있다.
내 질문은 데이터베이스 쓰기 작업이 주 스레드에서 발생하는지 백그라운드 스레드에서 발생하는지 여부입니다. 내에서 호출했을 NSOperation
때 다른 스레드 (MainThread가 아님)에서 NSOperation
. 누군가 NSOperation
및을 ( 를) 다루는 동안이 시나리오를 설명해 주시겠습니까 NSOperationQueue
?