iphone - ordenar - ¿Debería invocarse URLForUbiquityContainerIdentifier en un hilo fuera del hilo principal?
leer correos iphone (1)
He leído mucha información contradictoria acerca de si URLForUbiquityContainerIdentifier:
debe URLForUbiquityContainerIdentifier:
fuera del hilo principal o no. En gran parte de la documentación de Apple, siempre llaman a este método, presumiblemente, en el hilo principal. Sin embargo, también he leído que es posible que llamar a este método pueda bloquearse durante un tiempo significativo.
¿Cuáles son los pensamientos de todos? Llámalo en el hilo principal y no te preocupes o sí, ¿SIEMPRE haces esta llamada en otro hilo?
NSFileManager puede estar bloqueando y se recomienda ejecutar en un subproceso diferente del subproceso principal. Aquí hay un fragmento del uso de Grand Central Dispatch para utilizar iCloud Storage en un hilo diferente
dispatch_queue_t globalQueue = dispatch_get_global_queue(QUEUE_PRIORITY_DEFAULT, 0);
dispatch_async(globalQueue, ^{
NSFileManager *fileManager = [[NSFileManager alloc] init];
NSURL *ubiquityContainer = [fileManager URLForUbiquityContainerIdentifier:nil];
dispatch_queue_t mainQueue = dispatch_get_main_queue();
dispatch_async(mainQueue, ^{
[self updateWithUbiquityContainer:ubiquityContainer];
});
});
Esto es de un gran artículo ubicado aquí:
http://oleb.net/blog/2011/11/ios5-tech-talk-michael-jurewitz-on-icloud-storage/