美文网首页运行时
iOS bug调试-malloc

iOS bug调试-malloc

作者: 夜未殇 | 来源:发表于2016-09-20 09:37 被阅读1131次

运行程序时没有错误提示,出现如下信息

项目(702,0x198497310) malloc: stack logs being written into /private/var/mobile/Containers/Data/Application/461E4C49-CF65-49F6-8B76-AF30533D5390/tmp/stack-logs.702.100098000.TableDelete.3JtuAw.index

项目(702,0x198497310) malloc: recording malloc and VM allocation stacks to disk using standard recorder

项目(702,0x198497310) malloc: process 668 no longer exists, stack logs deleted from /private/var/mobile/Containers/Data/Application/461E4C49-CF65-49F6-8B76-AF30533D5390/tmp/stack-logs.668.1000a4000.TableDelete.CtzS13.index

将整个项目的源代码复制到别一个新建的项目中,再运行就没有问题了!

另:

在原来的项目中,使用debug模式启动项目就会出上面的错误,但不以debug模式启动时就能正常启动....

解决方法:

打开edit scheme ,在run模式下 取消Logging下的malloc stack选项即可(注:如果memory management下的enable guard malloc选项,则程序崩溃

NSZombieEnabled选项打开后,crash时能打印出具体的对象地址;Malloc Stack选项打开后,可以通过命令行打印出程序分配与释放空间的历史。两者相互结合,往往就能发现到底是什么对象被意外释放了。

另附上 xcode EXC_BAD_ACCESS调试

1.进入edit scheme 设置页面

2.在diagnostics面板中enable zombie objects和malloc stack选项

3.把xcode默认的debugger设置为GDB

4.当出现message sent to deallocated instance ***,键入info malloc-history ***5.根据堆栈信息,定位到内存泄露的代码

截图如下:

我猜你是打开了Run菜单下的Enable Guard Malloc的设置

相关文章

  • iOS bug调试-malloc

    运行程序时没有错误提示,出现如下信息 项目(702,0x198497310) malloc: stack logs...

  • iOS Bug 调试

    EXC_BAD_ACCESS https://www.jianshu.com/p/4989c498e21e

  • iOS Bug 调试

    1.打印log调试 #ifdef DEBUG # define DLog(fmt, ...) NSLog((@"[...

  • iOS 调试BUG

  • iOS的bug调试

    一、查看Crash Report 通过Xcode的Devices中把crash日志导出来:image.png 查看...

  • iOS 调试

    iOS调试 - NSLog iOS调试 - 断点 iOS调试 - LLDB iOS调试 - EXC_BAD_ACC...

  • iOS Bug调试小技巧

    我们在开发中,经常遇到偶现的bug,这些bug很多都是网络差的情况下出现的,而且都是用户出现的,我们在正常测试过程...

  • IOS基础:调试修复BUG

    原创:知识点总结性文章创作不易,请珍惜,之后会持续更新,不断完善个人比较喜欢做笔记和写总结,毕竟好记性不如烂笔头哈...

  • ios9本地消息隔天无法推送

    最近调试程序时发现一个bug,在最新的ios9系统下面,如果用 [[UIApplication sharedApp...

  • iOS崩溃调试

    iOS崩溃调试 iOS崩溃调试

网友评论

  • 漫步在银河畔:请教一下,咱两的问题很相似,但是我的问题出现在Xcode 8.3 启动8.4版本模拟器时,出现如下提示 yangtuner(13886,0x10f44b3c0) malloc: stack logs being written into /tmp/stack-logs.13886.119af0000.yangtuner.vr1qix.index
    yangtuner(13886,0x10f44b3c0) malloc: recording malloc and VM allocation stacks to disk using standard recorder
    yangtuner(13886,0x10f44b3c0) malloc: process 13860 no longer exists, stack logs deleted from /tmp/stack-logs.13860.11c832000.yangtuner.1h65uC.index
    ,模拟器启动时貌似没有运行任何代码,不知道是否是Xcode环境配置问题还是其他原因,导致应用只停留在启动界面,不知道有没有解决办法?真机和9.0以上模拟器都没有任何问题
    夜未殇:@漫步在银河畔 你在控制台输入shell malloc_history 13886 0x10f44b3c0,看看能打印出东西来吗
    漫步在银河畔:@夜未殇 我这里什么环境变量都没配置过,本来就是空的
    夜未殇:Product->Edit Scheme->Run **(你的项目名字)->Arguments->Environment Variables 清空
    你试试这样

本文标题:iOS bug调试-malloc

本文链接:https://www.haomeiwen.com/subject/woznettx.html