重複の可能性:
キューのディスパッチ中にアプリがブロックされる
私は 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) がそこで停止したことがわかります。再生を押しても何も変わりません。なにが問題ですか?何か案は?