- 私は私がunlockWithConditionを(NSConditionLockを使用)を使用して回避しようとしたNSLockを使って、このエラーを取得し、関係なく、私は同じ結果を得る:IOS SDK - NSLockメッセージ:「スレッドからロック解除もロックしていなかった」
* _NSLockError()をブレークしてデバッグします。 * - [NSLock unlock]:ロックしていないスレッドからロック( '(null)')を解除しました。
- 私it'sが悪い場合はわからないが、何 - 私にすることはこれです:
new Thread:
[lockA lock];//waiting unlock
[lockB lock];//waiting unlock
..shared code..
[lockA unlock];
[lockB unlock];
in Main Thread:
//Do two HTTP request.
//when request respond, I unlock the locks in respective threads with [lockA unlock];
[lockB unlock];
だから、セクション "..sharedコード.." を実行することができます。なぜこのエラーが出るのか分かりません。
誰かが私が間違っていることを説明できますか?完璧に動作するはずです。
があるがLOCKA/B上の別のスレッドから呼び出しますか? –
'_NSLockError()'にブレークポイントを置くと、違法ロック解除がどこで発生しているのかを示すスタックトレースが得られます。あなたはそれを試しましたか? – user1118321
はい、私は新しいスレッドでリクエストの応答を解析します。 – ZiggyST