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

凡科二级网站怎么做网站源码 带后台

凡科二级网站怎么做,网站源码 带后台,电商网站制作价格,wordpress 博客 免费主题weak 引用在 iOS 中通过维护一个全局的弱引用表来实现。当弱引用的对象被释放时#xff0c;所有指向它的弱引用会被自动置为 nil#xff0c;从而防止悬挂指针。 弱引用表#xff08;Weak Table#xff09;的键和值 理解弱引用表的键和值对于理解 weak 引用的底层机制非常重… weak 引用在 iOS 中通过维护一个全局的弱引用表来实现。当弱引用的对象被释放时所有指向它的弱引用会被自动置为 nil从而防止悬挂指针。 弱引用表Weak Table的键和值 理解弱引用表的键和值对于理解 weak 引用的底层机制非常重要。下面我详细解释一下这两个概念并用示例和图表来说明。 键Key 对象指针Object Pointer这是被 weak 引用的对象的内存地址。每个被 weak 引用的对象在弱引用表中都有一个对应的条目其键就是这个对象的内存地址。 值Value 弱引用指针集合Set of Weak Reference Pointers这是一个集合包含了所有指向该对象的 weak 引用指针的地址。当一个对象有多个 weak 引用时这些引用指针的地址都会记录在集合中。 具体示例 示例代码 Person *personInstance [[Person alloc] init]; __weak Person *weakPerson1 personInstance; __weak Person *weakPerson2 personInstance;在这个示例中 personInstance 是一个 Person 对象的强引用。weakPerson1 和 weakPerson2 是 Person 对象的两个弱引用。 弱引用表表示 创建弱引用时 假设 personInstance 的内存地址是 0x1000。weakPerson1 的内存地址是 0x2000。weakPerson2 的内存地址是 0x3000。 Weak Table: -------------------------------------- | Object Pointer | Weak Reference(s) | -------------------------------------- | 0x1000 | [0x2000, 0x3000] | // personInstance is referenced by weakPerson1 and weakPerson2 --------------------------------------在这个弱引用表中 键 0x1000 是 personInstance 的内存地址。值 [0x2000, 0x3000] 是一个集合包含了所有指向 personInstance 的弱引用指针weakPerson1 和 weakPerson2 的地址。 对象释放时 当 personInstance 的引用计数变为零系统准备释放该对象时运行时会执行以下操作 找到所有弱引用 在弱引用表中查找键 0x1000找到对应的值 [0x2000, 0x3000]。 置 nil 将 0x2000 和 0x3000 地址上的值置为 nil。 删除条目 从弱引用表中删除键 0x1000 的条目。 Weak Table (before release): -------------------------------------- | Object Pointer | Weak Reference(s) | -------------------------------------- | 0x1000 | [0x2000, 0x3000] | --------------------------------------Weak Table (after release): -------------------------------------- | Object Pointer | Weak Reference(s) | -------------------------------------- | (nil) | [nil, nil] | // personInstance 已被释放weakPerson1 和 weakPerson2 被置为 nil --------------------------------------关键函数 在实现弱引用机制时运行时系统使用以下关键函数 libobjc 中的一系列 API objc_initWeak初始化一个弱引用将其添加到弱引用表中。objc_loadWeak读取一个弱引用的值确保在对象被释放后返回 nil。objc_storeWeak给弱引用赋值并更新弱引用表。objc_destroyWeak销毁一个弱引用并从弱引用表中移除对应的条目。 概述 弱引用表的键是被引用对象的内存地址而值是一个集合包含了所有指向该对象的弱引用指针的地址。当对象被释放时运行时会在弱引用表中找到所有指向该对象的弱引用并将它们置为 nil然后删除对应的条目。通过这种机制iOS 保证了 weak 引用的安全性和可靠性。
http://www.hkea.cn/news/14493440/

相关文章:

  • 网站优化内链怎么做软件开发项目管理工具
  • 公司注册网站需要什么条件网站流量导入是什么意思
  • 和各大网站做视频的工作总结天津购物网站搭建
  • 网站品质cpancel面板搭建WordPress
  • 微信后台网站开发知识体系贵阳网站建设 设计可以吗
  • 网站企业业务员怎么做网站开发者工具
  • 微软的网站开发软件wordpress英文版中文版
  • 做网站 哪里发布温泉网站建设
  • 2014做社交网站网站建设算什么专业
  • 通河县机场建设网站产品设计大师作品
  • 红河公司 网站建设wordpress调用目录
  • 建设局查询网站首页网站建设的步骤及方法
  • 湖州网站制作报价自己做视频直播网站
  • 钟村免费建站公司建筑工程信息价哪里可以查询
  • 成都市微信网站建设报价前端开发培训学费
  • 仿网站百度会怎么做网站开发成本主要有哪些
  • 泰安网站建设入门网站设计模板源码
  • 网站建设方案范文8篇云朵课堂网站开发怎么收费
  • 东营免费网站制作智能小程序是什么
  • 网站UI怎么做长春网站建设哪家专业
  • 服装行业网站建设比较好dw网页制作教程ppt
  • 长宁专业做网站网站专题制作
  • 孔夫子旧书网网站谁做的精选资料
  • 旅游加盟网站建设环保网站建设费用
  • 金华市有网站建设最低价wordpress登陆不上
  • 合肥网站建设排名网站查外链
  • 本溪兼职网站建设招聘区域信息网站怎么做
  • 保险网站 源码印刷设计营销网站
  • 网站做电商销售需要注册吗泉州那几个公司网站建设比较好
  • 施工企业会计核算办法2021网站优化软件破解版