Dans le document de pomme, pomme dit:peut-elle fonctionner cadre ABAddressBook avec (problème de fil) Queue série Grand Central Dispatch
Important: Les instances de ABAddressBookRef ne peuvent pas être utilisés par plusieurs threads. Chaque thread doit créer sa propre instance.
Et
objets de fichiers ne peuvent être passés à travers les discussions safely.Instead, vous doit passer l'identifiant d'enregistrement correspondant
Qu'est-ce que le premier veut dire? Si je peux assurer à chaque instant, il n'y a qu'un seul thread qui accède à ABAddressBookRef, puis-je utiliser ABAddressBookRef dans plusieurs threads?
Et le second, qu'est-ce qui ne peut pas être passé en toute sécurité sur les threads?
Et il semble que GCD n'assure pas que tous les blocs sont excutés dans le même fil même si les blocs sont dans une même file d'attente série.
Est-ce que cela signifie que je ne peux pas utiliser GCD pour gérer le framework ABAddressBook? Ou je peux seulement créer un ABAddressBookRef dans chaque bloc? (J'ai testé cela, vraiment lent)