나는이 웹에 대한 답변을 찾고 있었지만 답변을 찾지 못했습니다. 다른 측면에서는 꽤 일반적인 것 같아서 여기에 몇 가지 키워드가 누락되었을 가능성이 있습니다. 어쨌든 문제는 다음과 같습니다 :코코아 콜백은 언제 제어됩니까?
ObjC (iPhone)의 콜백 함수는 언제 제어됩니까?
runloop을 담당하는 계층 구조 클래스의 상위 부분에 제어가 제공된 후에 발생합니까? 다른 함수 호출이 실행되는 중간에 발생할 수 있습니까?
예를 들어,의는 있는 NSURLConnection 보자, 우리는 모른다거나 didReceiveResponse GET의 호출하는 경우가 있습니다, 그것은 didReceiveResponse 또는 다른 콜백 메소드를 호출하는거야 때 예측할 수 없습니다 내가 다른 기능의 중간에있을 때? 실제로, Kaspa
다음 나는 (내가 전에 생각처럼)있는 NSURLConnection은 후드 아래에 새 스레드를 생성하지 않는 것으로 가정한다. 그렇다면 어떻게 비 동시성을 달성 할 수 있을까요? 더 많은 정보를 얻고 싶습니다. CocoaTouch의 어떤 클래스가 실행 루프를 담당합니까? – Kaspa
클래스는 NSRunloop.NSURLConnection입니다. 스레드와 runloops와의 상호 작용을 관리하는 몇 가지 방법이 있습니다. 하드웨어 인터럽트를 사용하는 장치 드라이버처럼 비동기 적으로 작동한다고 저는 믿지 않습니다. 대신, 그것은 중요한 일이거나 신중한 스케줄링입니다. – TechZen