weak

2024/5/7 9:37:31

[__block / __weak 影响dealloc 释放]

参考 Block循环引用的三种解决方式 iOS开发——Block引起循环引用的解决方案 iOS 控制器POP后dealloc方法不走,通知监听无法移除的问题 assign weak copy block __block与__weak的区别 Bug背景 自定义一个导航控件,在处理左右按钮点击事件时,没有采用代理方法,…

weak 的实现原理

iOS 在运行时维护着一个全局的弱引用表,该表是一个 hash 表,hash表的 key 是 weak 对象的地址,value 是指向该对象的所有 weak 指针的地址数组。 /**全局的弱引用表,本质是一个hash结构,object作为key, weak_entry_…

Rust源码分析——Rc 和 Weak 源码详解

Rc 和 Weak 源码详解 一个值需要被多个所有者拥有 rust中所有权机制在图这种数据结构中,一个节点可能被多个其它节点所指向。那么如何表示图这种数据结构?在多线程中,多个线程可能会持有同一个数据?如何解决这个问题。 Rc rus…

iOS 防止循环引用的两个方法

__block UITableViewController *weakself self;[self.tableView addJElasticPullToRefreshViewWithActionHandler:^{dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{//请求好数据,停止刷新[weakself.table…

__attribute__((weak)) 简介及作用

最新在看项目新架构代码上看到了有使用到weak,以前没有看到过,所以写一篇文章以作记录。 场景: A,B两个模块,A模块调用了不确定B模块是否提供了函数,但是又不得不调用,这个时候在A模块中再申明一个弱符号…

weak的实现原理

iOS 在运行时维护着一个全局的弱引用表,该表是一个 hash 表,hash表的 key 是 对象本身,value 是指向该对象的所有 weak 指针的地址数组。 /**全局的弱引用表,本质是一个hash结构,对象本身作为key, 存储weak修饰的指…