gpt4 book ai didi

ios - boost::shared_ptr 删除器从未调用过 iOS 模拟器

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

我们在一个工作区中有一个 iOS 应用程序和 2 个项目。我们有一个奇怪的内存泄漏:如果我们在第二个项目中使用 deleter 创建 boost::shared_ptr 并在模拟器上启动应用程序 - deleter 从未调用过。设备上的相同代码工作正常。从主项目调用的相同代码 - 在模拟器上工作正常。

有谁知道如何处理这个问题?我将不胜感激任何想法。

项目 v1.55 中的 PS boost 版本,用于 boost 构建使用 https://github.com/mgrebenets/boost-xcode5-iosx 的修改版本

PPS 如果它能更好地解释这种情况:我们已经用很多代码多次检查过这种情况。最终测试是调用 boost::shared_ptr sp( new int[10], []( int *p ) { printf("Deleted\n"); delete[] p; } );来自项目的不同部分。问题开头描述的结果行为。

最佳答案

回答我自己的问题:我找到了下一个解决方法:

  1. 迁移到 Xcode 7.0

  2. 根据 http://www.openradar.me/21724015 使用“-mios-version-min=7.0”重建 boost

内存泄漏消失了。

关于ios - boost::shared_ptr 删除器从未调用过 iOS 模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32647526/

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