我使用 NSLock 遇到此错误,我试图通过使用 unlockWithCondition (使用 NSConditionLock)来规避它,但无论我得到相同的结果:
* 中断 _NSLockError() 以进行调试。* -[NSLock unlock]:锁('(null)')从没有锁定它的线程解锁。
我不确定它是否不好,但我正在做的是:
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 code..”部分可以执行。我不明白为什么我会收到此错误。
谁能解释我做错了什么?看起来它应该可以完美运行。