java中有方法修饰符,例如public synchronized func()
,这样可以保证这个方法在某个时间点只会被一个对象调用,OC有没有这样的方法啊,假如排除NSlock这种方法的话。
java中有方法修饰符,例如public synchronized func()
,这样可以保证这个方法在某个时间点只会被一个对象调用,OC有没有这样的方法啊,假如排除NSlock这种方法的话。
1 回答1.7k 阅读
1 回答875 阅读
2 回答684 阅读
2 回答672 阅读
1 回答665 阅读
1 回答743 阅读
669 阅读
方法级别的控制没有语言级别的修饰符,可以将代码块加锁。
加锁的方法很多。
@synchronized
NSLock
pthread_mutex
dispatch_semaphore
OSSpinLock
1. @synchronized
2. NSLock
3. pthread_mutex
4. dispatch_semaphore
5.OSSpinLock
由于自旋锁在iOS中不再安全,这边也不介绍了,具体可以看这篇博客
不再安全的 OSSpinLock