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

北京一个公司做网站认证发外链的论坛

北京一个公司做网站认证,发外链的论坛,蚌埠网站建设专业公司,服务器做jsp网站教程视频教程众所周知,基础类型如 int、float 的变量被 atomic 修饰后就具有原子性,则线程安全。 然而有些情况,atomic 修饰后不一定是线程安全的。 atomic 修饰 NSString,NSArray 的时候,只是保障首地址(数组名&…

众所周知,基础类型如 int、float 的变量被 atomic 修饰后就具有原子性,则线程安全。

然而有些情况,atomic 修饰后不一定是线程安全的。

atomic 修饰 NSString,NSArray 的时候,只是保障首地址(数组名)原子性,而首地址指向的是一整片内存空间。若多线程 A 访问 length 或 count,然后线程 B 把数组的元素删去了几个,那么待会线程 A 访问就出现了数组越界

解决方法是:对数据结构的 add 和 remove 操作加锁。NSArray 不可修改的话,可以继承它,自定义带锁的 add 和 remove 方法。现有的实现。SynchronizedArray 就是这样的思路。

@property (atomic, strong) NSArray* arr;//thread A
for (int i = 0; i < 100000; i ++) {if (i % 2 == 0) {self.arr = @[@"1", @"2", @"3"];}else {self.arr = @[@"1"]; // i % 2  为奇数时,直接缩短数组长度。}NSLog(@"Thread A: %@\n", self.arr);
}//thread B
for (int i = 0; i < 100000; i ++) {
// 先访问了 count,然后被线程 A 打断,数组长度被缩减。那么待会回来重新访问的时候,就会越界 crash。if (self.arr.count >= 2) { NSString* str = [self.arr objectAtIndex:1];}NSLog(@"Thread B: %@\n", self.arr);
}
http://www.wangmingla.cn/news/131639.html

相关文章:

  • wordpress post 404seo搜索引擎优化求职简历
  • 网站必须做301重定向吗廊坊seo排名扣费
  • 在日本做网站百度提交工具
  • 网站的工作简报怎么做app注册接单平台
  • 网站建设公司中企动力网络服务器是指什么
  • 学做网站容易吗三叶草gw9356
  • 做任务网站建设2024年4月新冠疫情结束了吗
  • 做网站建设的公司有哪些内容迅雷磁力链bt磁力种子
  • 合肥中小型企业网站建设方案模板企业官网建站
  • 模板网站制作公司百度问一问人工客服怎么联系
  • 做水产有什么网站软文媒体
  • 北京市住房建设委员会申请网站温州seo按天扣费
  • 2018春节放假安排 网站建设关键词搜索次数查询
  • 怎么做海淘网站上海seo推广平台
  • 唐山网站建设最好的百度seo是啥
  • wordpress邮箱配置上海站群优化
  • 网站建设公司运营网站底部友情链接
  • 网页制作学什么软件北京网络优化推广公司
  • 太原网站建设司seo网络优化教程
  • 中国科协网站建设招标my63777免费域名查询2023年
  • 网站开发入门教程html网页模板
  • 公司做自己的网站平台台百度一下网页搜索
  • 建站公司前景站长源码
  • 用java做的网上购物网站网络服务中心
  • 品牌工厂网站建设新站seo外包
  • 网站先做前台还是后台如何注册网站怎么注册
  • 网站建设项目策划书范文我赢网seo优化网站
  • wordpress站点实例临沂今日头条新闻最新
  • 视频网站空间在线工具
  • 织梦模板免费seo技术好的培训机构