gpt4 book ai didi

iPhone:模态视图和委托(delegate)中的僵尸对象

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:27:16 25 4
gpt4 key购买 nike

我的应用程序有时会发生崩溃,我在启用僵尸的情况下进行了测试,发现此方法是僵尸,此方法通常可以正常工作,但在某些情况下,例如在某些时候来回导航很多,它会崩溃。

我在@property中保留了datepickerView,在deaaloc中释放了它。

enter image description here

最佳答案

在 dealloc 中将 datePickerDelegate 设置为 nil。如果它在第一次实例化后有一个保留属性,委托(delegate)中可能会有一个死引用,并且会在启用 Zombies 时随机导致创建和崩溃。崩溃的发生是因为保留属性释放了以前的值,如果它是死引用,崩溃就会随之而来——随机的。此外,最好将代表设置为分配,而不是保留

在 instruments 中运行,在 Allocations 中将“Record reference counts”设置为 on(您必须停止记录才能设置该选项)。使选择器运行,停止记录,搜索 ivar (datePickerView),向下钻取,您将能够看到所有保留、释放和自动释放发生的位置。

Reference Counts

关于iPhone:模态视图和委托(delegate)中的僵尸对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7474498/

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