美文网首页
iOS常见锁对象

iOS常见锁对象

作者: 恋家的人走不丢 | 来源:发表于2017-12-06 17:22 被阅读0次

iOS常见锁对象:

1.互斥锁NSLock

NSLock* lock = [[NSLock alloc] init];

[locklock];

//处理操作

[lockunlock];

2.对象锁@synchronized(self)

staticNSObject*obj =nil;

@synchronized(self)

{

if(obj ==nil) {

obj = [[NSObjectalloc]init];

}

returnobj;

3.条件锁NSConditionLock

//条件锁

NSConditionLock*lock = [[NSConditionLockalloc]initWithCondition:1];

//任务

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{

//加锁

[locklockWhenCondition:1];

NSLog(@"-------任务1");

//解锁

[lockunlockWithCondition:2];

});

//任务

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{

//加锁

[locklockWhenCondition:2];

NSLog(@"-------任务2");

//释放锁

[lockunlock];

});

4.递归锁NSRecursiveLock

相关文章

  • iOS常见锁对象

    iOS常见锁对象: 1.互斥锁NSLock NSLock* lock = [[NSLock alloc] init...

  • iOS 中常见的几种锁-代码示例

    iOS 中常见的几种锁-代码示例 iOS 中常见的几种锁-代码示例

  • iOS锁系列-目录

    1、 iOS锁系列-NSLock对象锁2、iOS锁系列-NSConditionLock条件锁3、iOS锁系列-NS...

  • OC--各种线程锁

    参考:正确使用多线程同步锁@synchronized()iOS中的锁iOS多线程安全详解iOS 常见知识点(三):...

  • iOS 锁

    iOS Lock(锁) 主要介绍常见的锁,以及synchronized、NSLock、递归锁、条件锁的底层分析 借...

  • iOS中的锁

    锁是一种同步机制,用于多线程环境中对资源访问的限制iOS中常见锁的性能对比图(摘自:ibireme): iOS锁的...

  • iOS开发中常用的锁

    锁是线程编程同步工具的基础,在iOS开发中常用的锁有以下几种: @synchronized NSLock 对象锁 ...

  • Lock

    iOS中以NS开头常见的锁的有NSCondition、NSConditionLock、NSLock、NSRecur...

  • iOS中常见锁

    pthread_mutex POSIX threads(简称Pthreads)定义了一套跨平台的多线程常用API,...

  • iOS:常见的锁

    加锁是为了防止多条线程同时访问同一块内存,也就是为了线程同步。实现线程同步不仅仅只有加锁的方式,也可以通过 同步串...

网友评论

      本文标题:iOS常见锁对象

      本文链接:https://www.haomeiwen.com/subject/lhslixtx.html