1
我想加快同步聯繫人上的所有聯繫人到我的應用程序。目前,在同步聯繫人時阻塞主線程。多線程聯繫人同步
我在NSInvocationOperation中添加了個人聯繫人設置並將其添加到NSOperationQueue。
我知道你只能訪問主線程中的UI。關於地址簿數據,您無法訪問哪些內容?
我想加快同步聯繫人上的所有聯繫人到我的應用程序。目前,在同步聯繫人時阻塞主線程。多線程聯繫人同步
我在NSInvocationOperation中添加了個人聯繫人設置並將其添加到NSOperationQueue。
我知道你只能訪問主線程中的UI。關於地址簿數據,您無法訪問哪些內容?
地址簿框架通常可以安全地從後臺線程使用,但它們都是缺陷。最重要的限制條件是在documentation提到:
重要 ABAddressBookRef的實例不能被多個線程使用。每個線程都必須創建自己的實例。
和
重要記錄對象不能在線程之間安全地通過。相反,您應該傳遞相應的記錄標識符。有關更多信息,請參閱「使用記錄標識符」。
注意,僅僅因爲NSInvocationOperation
在同一NSOperationQueue
並不能保證他們會在同一線程上執行。
好的,謝謝你的回覆。我會放棄這一點,並確保ABAddressBookRef只被其關聯的線程使用。 – Bassem