可能重复:
调度队列时应用程序阻塞
我正在使用 XMPPFramework,在它的代码中有这样的方法:
- (NSDictionary *)occupants
{
if (dispatch_get_current_queue() == moduleQueue)
{
return occupants;
}
else
{
__block NSDictionary *result;
dispatch_sync(moduleQueue, ^{//IT BLOCKS HERE
result = [occupants copy];
});
return [result autorelease];
}
}
它不一致地卡在那里,并非总是如此;该应用程序没有响应,但它没有崩溃,所以我暂停它,我看到线程(线程 1)已停止在那里。如果我按下播放键,什么都不会改变。怎么了?有任何想法吗?