【问题标题】:JASidePanels memory freeingJASidePanels 内存释放
【发布时间】:2015-02-26 22:17:14
【问题描述】:

我正处于一个应用程序的最后开发阶段,该应用程序使用 JASidePanels 控件在应用程序的左侧显示一个菜单(该应用程序有 5 个主要部分)。

我现在严重依赖 XCode 的 Instruments 来定位 CPU 和内存瓶颈,我注意到切换中心视图控制器似乎并没有释放任何内存。因此,随着应用的使用,内存会增长,触发内存警告似乎没有多大帮助。

当点击左侧面板菜单中的项目时,我使用以下方法切换中心面板:

- (void)updateCenterViewControllerWithIdentifier:(NSString *)storyboardIdentifier;
{
    @try {
        self.centerPanel = [self.storyboard instantiateViewControllerWithIdentifier:storyboardIdentifier];
    } @catch (NSException *exception) {
        DDLogError(@"%@", exception);
    }
}

如果有人熟悉控件并且知道我可能做错了什么,那么有一些建议绝对很棒。提前致谢

【问题讨论】:

    标签: ios objective-c memory jasidepanels


    【解决方案1】:

    我认为问题在于异常处理。 Try-catch 导致 ARC 中的内存泄漏。您可以在这里找到详细信息,例如:https://stackoverflow.com/a/27142288/1073388

    另一件事是您不应该使用异常处理来处理 nib 加载问题。唯一可能导致异常的问题是 nib 名称错误,但这可以在开发过程中检查和修复。只有在无法预测异常行为并且代码块异常执行后应终止应用程序的情况下才应使用异常。

    【讨论】:

      猜你喜欢
      • 2011-05-10
      • 1970-01-01
      • 1970-01-01
      • 2013-12-23
      • 2013-12-05
      • 2015-04-22
      • 2011-01-17
      • 2021-12-23
      • 2017-06-29
      相关资源
      最近更新 更多