gpt4 book ai didi

ios - 通过引用访问实例变量安全吗?

转载 作者:行者123 更新时间:2023-11-29 12:38:48 25 4
gpt4 key购买 nike

下面两个代码片段有什么区别:

1.

__block __weak NSMutableArray *arrBlock = self.arr ;
[[AsyncRequest initRequest:url onCompletedBlock:^(NSMutableArray *arr) {
arrBlock = arr;
}]ExecuteRequest];

2.

id __weak weakself  = self;
[[AsyncRequest initRequest:url onCompletedBlock:^(NSMutableArray *arr) {
weakself.arr = arr;
}]ExecuteRequest];

它们都不会导致保留周期,但 Apple suggests使用第一个。第二个有问题吗?

最佳答案

它们有不同的效果。第一个更新局部变量,第二个更新实例变量(属性)。

你想使用哪个取决于你想要发生什么,但是我怀疑你想要第二个,因为如果那个 block 是异步执行的,第一个看起来像空操作。

关于ios - 通过引用访问实例变量安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25548651/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com