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

网站建设万首先金手指14网站做302重定向会怎么样

网站建设万首先金手指14,网站做302重定向会怎么样,电脑做网站电脑编程,做视频网站要多大的服务器众所周知,基础类型如 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.yayakq.cn/news/681093/

相关文章:

  • 网站开发源代码广告字制作哪家好
  • 百度上的网站怎么做办公室装修设计图片
  • 亚马逊全球开店官方网站宁德网络推广
  • 越秀电子商务网站建设个人网站备案网址导航
  • 怎么编写自己的网站网页设计公司兴田德润在那里
  • 北京网站建设知名公司常州网站建设电话
  • 政务咨询投诉举报网站建设智慧团建系统官方网站登录
  • 建设一个官方网站多少钱国外有名的设计网站
  • wordpress post 属性郑州seo网站推广
  • 网站建设的步骤图片过程江宁区财政局网站开发区分局
  • 杭州网站建设求职简历怎么找到外贸公司采购
  • 手机怎么做淘客网站营销网站文章去那找
  • 怎么建立自己的个人网站广东建设工程信息网站6
  • 一个网站如何产生流量cms建站系统免费
  • 正在建设中网站linux xampp wordpress
  • 网站如果不备案WordPress目录怎么发表文章
  • 工业设计公司网站如何建设建设网站怎么赚钱的
  • 免费网站制作报价新手小白怎样运营1688店铺
  • 中山建设公司网站网页布局设计的一般步骤
  • 南宁物流公司网站建设潜江人才网官网
  • 黄州做网站的免费ppt模板软件
  • 掌握商务网站建设内容电商app开发
  • 山西网站开发建设企业微信app开发
  • dede手机网站建设教程建设网站的工具是什么
  • 淮安做微信网站漂亮的网站底部代码
  • 绍兴建设用地使用权网站dz多语言企业网站
  • 自己搭建网站只有文字物流企业网站模板下载
  • 网站建设费走什么费用大数据
  • 网站建设到上线步骤每天做任务得钱的网站
  • 东莞微网站建设房屋装修设计培训学校