1

重複の可能性:
キューのディスパッチ中にアプリがブロックされる

私は 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) がそこで停止したことがわかります。再生を押しても何も変わりません。なにが問題ですか?何か案は?

4

0 に答える 0