- 线程锁
锁住一段代码,在同一时间内只能被一个线程访问。为了避免在同一个时间内有多个线程访问同一段代码就有了“锁”的概念。
- 线程安全
当一段代码被多个线程执行,执行后的结果和多个线程依次执行后的结果一直,那么这段代码就是线程安全的。
- NSlock
try 尝试加锁,失败是不会阻塞线程的,如果尝试获取锁失败就不会执行加锁代码。
- NSRecursivelock:递归锁解决了NSLock在同一个线程上不能多次加锁的问题,可以再同一个线程上多次加锁,而不会造成死锁;
锁住一段代码,在同一时间内只能被一个线程访问。为了避免在同一个时间内有多个线程访问同一段代码就有了“锁”的概念。
当一段代码被多个线程执行,执行后的结果和多个线程依次执行后的结果一直,那么这段代码就是线程安全的。
try 尝试加锁,失败是不会阻塞线程的,如果尝试获取锁失败就不会执行加锁代码。