在这段代码中,根据我的阅读结果,解锁并不能确保线程
以他们被锁定的相同顺序被解锁。这句话对吗?
什么是最好的同步方案,以确保线程被解锁
他们以相同的顺序被锁定?
- (void)insert:(id)number
{
[_lock lock];
[_numbers insertObject:number];
[_lock unlock];
}
- (void)insert
{
@synchronized (self) {
[_numbers insertObject:number];
}
}
最佳答案
确保线程以锁定顺序解锁的最佳同步方案是什么?
最好的同步方案是首先不要使用锁。请改用Grand Central Dispatch。串行队列可以连贯而简单地完成锁的工作,并且犯错的机会要少得多。
关于objective-c - 如何确保线程正确解锁,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58469748/