当前位置: 首页 > news >正文

绿色蔬菜网站模板设计好网站

绿色蔬菜网站模板,设计好网站,站群seo,庆阳西峰synchronized 介绍 synchronized 是 Objective-C 提供的一种 互斥锁#xff08;Mutex#xff09;#xff0c;它用于确保一段代码在同一时间只有一个线程能执行#xff0c;避免多线程访问共享资源时出现数据竞争。 基本语法 synchronized (lockObject) {// 需要加锁的代码…synchronized 介绍 synchronized 是 Objective-C 提供的一种 互斥锁Mutex它用于确保一段代码在同一时间只有一个线程能执行避免多线程访问共享资源时出现数据竞争。 基本语法 synchronized (lockObject) {// 需要加锁的代码 }lockObject 是锁的标识不同的对象代表不同的锁。如果多个线程使用相同的 lockObject则 synchronized 会保证同一时间只有一个线程能执行代码块。如果 lockObject 为空 (nil)不会起到任何加锁效果代码块仍然会并发执行。 synchronized 使用场景 1. 保护共享资源 如果多个线程同时修改同一个对象可能会出现数据竞争问题。例如 #import Foundation/Foundation.hinterface MyClass : NSObject property (nonatomic, assign) NSInteger count; endimplementation MyClass- (void)incrementCount {synchronized(self) {self.count self.count 1;} }endint main(int argc, const char * argv[]) {autoreleasepool {MyClass *myObject [[MyClass alloc] init];dispatch_queue_t concurrentQueue dispatch_queue_create(com.example.concurrentQueue, DISPATCH_QUEUE_CONCURRENT);// 创建多个线程同时调用 incrementCount 方法for (int i 0; i 1000; i) {dispatch_async(concurrentQueue, ^{[myObject incrementCount];});}// 等待所有任务完成dispatch_barrier_sync(concurrentQueue, ^{NSLog(Final count: %ld, (long)myObject.count);});}return 0; } 多次执行结果 Final count: 1000 Final count: 1000 Final count: 1000 如果去掉synchronized你会发现结果大多都不是1000 2. 多线程安全地添加元素到数组 多个线程可能同时访问 NSMutableArray如果没有同步措施可能会崩溃 interface SafeArray : NSObject property (nonatomic, strong) NSMutableArray *array; endimplementation SafeArray- (instancetype)init {if (self [super init]) {_array [NSMutableArray array];}return self; }- (void)addItem:(id)item {synchronized (self) {[self.array addObject:item];} }end注意事项 性能开销synchronized 会带来一定的性能开销因为每次进入和退出 synchronized 块都需要进行锁的获取和释放操作。因此在性能敏感的场景下应谨慎使用。死锁风险如果在 synchronized 块中嵌套使用 synchronized 块并且使用相同的锁对象可能会导致死锁。因此在使用 synchronized 时要避免出现死锁的情况。
http://www.hkea.cn/news/14306413/

相关文章:

  • 省通信管理局 网站备案制度流程某一个网页打不开是什么原因
  • 陕西网站建设平台如何查看网站备案
  • 宠物网站建设目标黑龙江建设局网站
  • 专业网站建设渠道商城网站不易优化
  • 电子商务网站建设携程动漫网站logo
  • 海安网站设计公司做企业网站须知
  • 进腾讯做游戏视频网站杭州网站开发设计
  • 企业网站开发怎么样软件设计专业介绍
  • 深圳做琴行的公司网站公司网站用模板做
  • 招远网站建设多少钱开发一个公司官网一般多少钱
  • 模板网站价格表it外包合同模板
  • 百度站长平台闭站保护江西建设职业技术学院最新官方网站
  • 360搜索建站设计网页
  • 建设安全带官方网站建筑师培训
  • 做网站的又营业执照的吗淘宝京东网站建设目的
  • 广西做网站建设的公司网站建设验收使用情况
  • 什么专业可以做网站大一python基础编程题
  • 网站建设企业云市场单机怎么做网站
  • 衡阳做网站建设的公司典型的网站开发人员
  • t型布局网站怎么做shopify建站流程
  • 厦门创意互动网站建设投资公司设立条件
  • 手机网站怎么建立工厂采购信息网
  • 上海沙龙网站建设网站定制的公司
  • 网站备案域名更改吗程序员做的导航网站
  • 西咸新区建设环保网站网址收录平台
  • 做电影网站服务器需求网站建设,h5,小程序
  • 深圳网站建设延安网站编辑框超链接怎么做
  • 白沟做网站广州市运营推广公司
  • 上海免费建网站手机网站后台管理
  • 免费做图素材网站织梦+和wordpress