【工作总结】LLDB调试技巧 - 篇一
备忘命令 :
命令“l”可以查看程序当前运行的位置
(lldb) l
}
- (void)rightBarButtonAction {
命令“bt”也能查看程序运行的调用栈
(lldb) bt
* thread #: tid = 0x527b4, 0x000000010db858d7 iSKG`__47-[SKGOAInformationViewController loadFileData:]_block_invoke(.block_descriptor=0x00007f83dc96d5d0, responseObject= key/value pairs) + at SKGOAInformationViewController.m:, queue = 'com.apple.main-thread', stop reason = breakpoint 2.1
* frame #: 0x000000010db858d7 iSKG`__47-[SKGOAInformationViewController loadFileData:]_block_invoke(.block_descriptor=0x00007f83dc96d5d0, responseObject= key/value pairs) + at SKGOAInformationViewController.m:
frame #: 0x000000010d948b00 iSKG`__54+[AFNetworkingTool GETwithURL:params:success:failure:]_block_invoke(.block_descriptor=0x00007f83dc96d5a0, task=0x00007f83da4d3370, responseObject= key/value pairs) + at AFNetworkingTool.m:
frame #: 0x000000010d9feb21 iSKG`__55-[AFHTTPSessionManager GET:parameters:success:failure:]_block_invoke(.block_descriptor=0x00007f83dc96d500, response=0x00007f83da5c80c0, responseObject= key/value pairs, error=0x0000000000000000) + at AFHTTPSessionManager.m:
frame #: 0x000000010d8a39cb iSKG`__72-[AFURLSessionManagerTaskDelegate URLSession:task:didCompleteWithError:]_block_invoke_272(.block_descriptor=<unavailable>) + at AFURLSessionManager.m:
frame #: 0x0000000112d3fe5d libdispatch.dylib`_dispatch_call_block_and_release +
frame #: 0x0000000112d6049b libdispatch.dylib`_dispatch_client_callout +
frame #: 0x0000000112d482af libdispatch.dylib`_dispatch_main_queue_callback_4CF +
frame #: 0x000000011209a2e9 CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ +
frame #: 0x000000011205b8a9 CoreFoundation`__CFRunLoopRun +
frame #: 0x000000011205ae08 CoreFoundation`CFRunLoopRunSpecific +
frame #: 0x00000001146fdad2 GraphicsServices`GSEventRunModal +
frame #: 0x000000010fe0330d UIKit`UIApplicationMain +
frame #: 0x000000010db8a14f iSKG`main(argc=, argv=0x00007fff5237e648) + at main.m:
frame #: 0x0000000112d9592d libdyld.dylib`start +
frame #: 0x0000000112d9592d libdyld.dylib`start +
检查帧参数和本地变量的最简便的方式“frame variable”
(lldb) frame variable
(__block_literal_1 *) .block_descriptor = 0x00007f83dc96d5d0
(__NSCFDictionary *) responseObject = 0x00007f83dc96e390 key/value pairs
(SKGOAInformationViewController *) self = 0x00007f83da4cdce0
(__NSCFArray *) shtLists = 0x00007f83dc970910 @"1 object"
(__NSCFDictionary *) aShtDic = 0x00007f83dc9713e0 key/value pairs
(SKGOAInformationFileModel *) file = nil
【工作总结】LLDB调试技巧 - 篇一的更多相关文章
- Xcode - LLDB调试技巧
LLDB是Xcode默认的调试器,它与LLVM编译器一起,带给我们更丰富的流程控制和数据检测的调试功能.平时用Xcode运行程序,实际走的都是LLDB.熟练使用LLDB,可以让你debug事半功倍. ...
- ios逆向过程中lldb调试技巧-po篇
假如你准备在模拟器里面运行这个,你可以在"(lldb)"提示的后面输入下面的: (lldb) po $eax LLDB在xcode4.3或者之后的版本里面是默认的调试器.假如你正在 ...
- ios逆向过程中lldb调试技巧
在ios逆向过程中,善于运用lldb,会给逆向带来很大的方便 一般的命令: 1.image list -o -f 看看各个模块在内存中的基址 2.register read r0 读取寄存器r0的 ...
- AS技巧合集「调试技巧篇」
转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=254726&extra=page%3D2%26filter%3Dautho ...
- Visual Studio 调试技巧:10 篇热文汇总
本文精选了 DotNet 2017年11月份的10篇热门文章.其中有技术分享.技术资源. 注:以下文章,点击标题即可阅读 <Visual Studio的调试技巧 > 调试技巧是衡量程序员 ...
- Visual Studio调试之断点技巧篇补遗
原文链接地址:http://blog.csdn.net/Donjuan/article/details/4649372 讲完Visual Studio调试之断点技巧篇以后,翻翻以前看得一些资料和自己写 ...
- (转)Intellij IDEA 2017 debug断点调试技巧与总结详解篇
背景:详细介绍idea的debug调试过程 Intellij IDEA 2017 debug断点调试技巧与总结详解篇
- GDB调试技巧:总结篇
目录 一 写在开头 1.1 本文内容 二 学习资料 三 常用命令 四 调试技巧 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 写在开头 1.1 本文内容 总结GDB调试的一些常用命令和调试 ...
- iOS各种调试技巧豪华套餐
转载自http://www.cnblogs.com/daiweilai/p/4421340.html 目录 前言 逼优鸡 知己知彼 百战不殆 抽刀断Bug 普通操作 全局断点(Global Break ...
随机推荐
- 【缓存】.net中Cache管理操作
隐藏行号 复制代码 ? 这是一段程序代码. using System; using System.Web; using System.Web.Caching; using System.Collect ...
- JS 中 this 关键字详解
本文主要解释在JS里面this关键字的指向问题(在浏览器环境下). 首先,必须搞清楚在JS里面,函数的几种调用方式: 普通函数调用 作为方法来调用 作为构造函数来调用 使用apply/call方法来调 ...
- Android IOS WebRTC 音视频开发总结(五三)-- 国内IM & RTC SDK列表
本文主要总结国内提供RTC SDK的产品,转载必须说明出处,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help 自从开通邮件和微信公众号以来,很多 ...
- C++多态性——函数的覆盖和隐藏
1.函数的覆盖 覆盖的条件: 基类函数必须是虚函数(使用Virtual关键字进行声明): 发生覆盖的两个函数必须分别位于派生类和基类中: 函数名称与参数列表必须完全一样: 2.函数的隐藏 隐藏,是指派 ...
- activiti搭建(五)BPMN介绍
转载请注明源地址:http://www.cnblogs.com/lighten/p/5931207.html 对于BPMN我也不是十分清楚,目前也只是因为对于Modeler中不熟悉的组件查询,来对这部 ...
- 解决mysql占用IO过高
1.日志产生的性能影响:由于日志的记录带来的直接性能损耗就是数据库系统中最为昂贵的IO资源.MySQL的日志包括错误日志(ErrorLog),更新日志(UpdateLog),二进制日志(Binlog) ...
- [原]Hrbust1053 Warcraft III (完全背包)
本文出自:http://blog.csdn.net/svitter 原题:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProbl ...
- 面向对象的 JavaScript
面向对象的javascript 一.创建对象 创建对象的几种方式: var obj = {}; var obj = new Object(); var obj = Object.create(fath ...
- (六)、nodejs中的express框架获取http参数
express获取参数方法: 一.通过req.params app.get('/user/:id', function(req, res){ res.send('user ' + req.params ...
- Log4net使用笔记
Log4net使用笔记 编写人:CC阿爸 2013-10-29 近来在处理项目时候,想将系统的操作日志以文本的形式记录下来,方便对系统操作记录进行追踪. 经过在网上搜索部分解决方案,大致可以归纳如 ...