gpt4 book ai didi

ios - 内存泄漏 Xcode 8 仪器

转载 作者:行者123 更新时间:2023-11-28 12:32:42 28 4
gpt4 key购买 nike

我在我的 View Controller 上什么也没做,我看到了应用程序运行时正在变化的图表。

这真的是泄漏吗?

enter image description here

第一次显示绿色复选标记,然后显示 1 次泄漏,然后没有新的泄漏。

所以这意味着没有泄漏,或者仍然有 1 个泄漏但没有新泄漏?

我实际上有应用委托(delegate),其中包含经理的强引用。

class AppDelegate {

var applicationManager = ApplicationManager()

}

我在 ApplicationManager 中的服务很少

class ApplicationManager
{
lazy var apiService: APIService = {

let service = APIService()

return service

}()

lazy var facebookService: FacebookService = {

let service = FacebookService()

return service

}()
}

我有一个函数

func logInUser()
{
guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else {
fatalError()
}

let apiService = appDelegate.applicationManager.apiService

guard let email = emailTextField.text, let password = passwordTextField.text else {
return
}
apiService.loginUserWith(email, password: password) {(result) in
}

这段代码会导致问题吗?

使用新工具我也看到了

我有一个泄漏的对象(它在另一个以前的项目中)但具有相同的管理器和服务实现。

enter image description here

最佳答案

我要表明实际上没有泄漏。 Xcode 8.2 发行说明说:

The Memory Debugger for macOS and the iOS Simulator fixes reporting of false memory leaks for Swift classes containing either fields of type enum, or classes that inherit from certain Objective-C framework classes. (27932061)

您使用的是 Xcode 8.1,因此我们知道此版本中存在“报告 Swift 类的错误内存泄漏”(尽管在具体情况下,以及即使在 Xcode 8.2 中该错误是否已完全修复,仍不清楚我)。

此外,我下载了您的 github 示例项目并在 Xcode 8.2.1 中运行它,没有发现任何泄漏报告,无论是在 Instruments 中还是在内存图中。这是仪器输出:

enter image description here

关于ios - 内存泄漏 Xcode 8 仪器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41683944/

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