0
我在嘗試使用以下代碼獲取元數據Dropbox dir
,調用loadMetadata
Dropbox API
並希望callback
(loadedMetadata)在數據位於設備中時被調用。這是代碼:以異步模式在類屬性中獲取Dropbox元數據
_semaphore = dispatch_semaphore_create(0);
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){
NSLog(@"loadMetadata() in async block");
[self.restClient loadMetadata:@"/"];
});
dispatch_semaphore_wait(_semaphore, DISPATCH_TIME_FOREVER);
正如你所看到的,我調用異步模式,獲取元數據在一個屬性,然後返回其他方法。我提出以下呼叫loadedMetadata
回調:
dispatch_semaphore_signal(_semaphore);
好,這裏的問題是,loadedMetadata
回調永遠不會調用。我不知道爲什麼,但我放在loadedMetadata
的痕跡永遠不會打印出來,並且application is freeze
(等待加載的元數據信號)。我以DISPTACH_TIME_FOREVER
爲例,請不要考慮您的想法。
此調用的API V2版本是什麼? –