这更令人烦恼.每次停止模拟器后,Xcode都会因为某些原因跳转到main.m. 在左侧导航栏中,它会跳转到Debug Navigator.
有没有办法来解决这个问题?
这很烦人,因为我可能正在测试某一行代码,现在每次,我都需要点击几下才能回到那段代码.
这个问题并不新鲜,但似乎变得更糟.在撰写本文时,我是转基因种子,但这个问题在XCode 4.2 final中仍然存在.这在以前版本的XCode中不是问题.
Kri*_*dra 15
当我们从xcode开始调试时,调试器将自己设置为监视来自OS的信号.当我们按下XCode中的停止按钮(或点击cmd + R - 它首先停止现有实例运行,然后尝试启动新实例,稍微等于我们先按手动停止然后再运行)SIGKILL被发送到调试器.
每当中断的原因来自应用程序外部(换句话说,所有发送SIGKILL的情况,如停止按下按钮),调试器跳转到main,因为main是应用程序的根目录和应用程序与操作系统相符的位置.调试器无法确定发出此SIGKILL的原因(按xcode中的停止按钮/从多任务栏中按cmd + R /删除应用程序等),但它将SIGKILL视为外部中断,并且与您的代码无关.所以它跳到主要.
如果中断的原因来自app内部(如app crash/SIGABRT),调试器会处理它并跳转到崩溃的地方,我们通常会看到它.
我不认为这是一个xcode错误,而是一种处理SIGKILL的常规方法.但是如果你想保留你的代码并且不想跳到main,你可以做两件事
你可以像加布建议的那样做.正如BBonified所说,它就像一个乐队助手,但我认为它应该有效(我个人从未尝试过)
在此处报告功能的错误/请求.让我告诉你,你不是第一个这样做的人.已经报告了一个错误.看到 这个和这个.但我对Apple的积极行动没有多大希望
我同意你的意见,有时很烦人.特别是如果您在之前的XCode版本中遇到过不同的体验.但我们只能拿走他们在这里给出的东西.
小智 11
我想把它称为bug是公平的,Xcode 3专门压制了这个无用的人工制品.
我已经成功(四次计算)这个单线程~/.gdbinit:
handle SIGKILL nostop noprint nopass
Run Code Online (Sandbox Code Playgroud)
取自这个gdb手册:
http://www.delorie.com/gnu/docs/gdb/gdb_39.html
不确定它是否也适用于lldb.
我尝试了大卫的建议,但这对我不起作用,所以我尝试了类似的东西:
我正在使用Xcode版本4.2 build 4D199.
编辑:这工作约15分钟.然后它再次在编辑器中恢复了main.m.
小智 6
我有同样的问题,它真的很烦人,特别是当你在调试中,经过小修改连续几次停止/启动应用程序.
通过Xcode用户首选项中的设置可以解决所有问题:
你去吧 从现在开始,Xcode不会移动您的编辑视图.请享用.
PS:Xcode版本4.2 Build 4C199
| 归档时间: |
|
| 查看次数: |
5374 次 |
| 最近记录: |