从iPhone连接到SQLite时出错

时间:2022-01-07 01:43:38

My application shows this error

我的应用程序显示此错误

asm CPSqliteConnectionStatementForSQL 0x30897lb3:10

asm CPSqliteConnectionStatementForSQL 0x30897lb3:10

and it stopped at this breakpoint in debugger

并且它在调试器中的此断点处停止

0x308971cb <+0024> mov 0x8(%edi),%eax

0x308971cb <+0024> mov 0x8(%edi),%eax

Does someone know about it?

有人知道吗?

1 个解决方案

#1


The assembly code won't tell most of us anything at all, and your question is pretty light on detail about the context in which the problem occurs, such as what your app is trying to do when it crashes, whether this is always reproducible, etc. If you post more information we'll be able to help you more.

汇编代码根本不会告诉我们大多数人,你的问题对于问题发生的上下文的详细信息非常清楚,例如你的应用程序在崩溃时尝试做什么,这是否总是可重现的,如果您发布更多信息,我们将能够为您提供更多帮助。

If you're debugging in Xcode, trace back up the call stack until you reach your code, then set a breakpoint there and debug your program again. When it stops at that point, try examining the related variables and see if they have the values you expect.

如果您在Xcode中进行调试,请跟踪调用堆栈,直到找到代码,然后在那里设置断点并再次调试程序。当它在此时停止时,尝试检查相关变量并查看它们是否具有您期望的值。


Edit: At the request of the asker, here is a slight clarification. When it stops at a breakpoint, the Xcode debugger window will look something like this: (from this section of Apple's Xcode Debugging Guide)

编辑:应提问者的要求,这里有一点点澄清。当它在断点处停止时,Xcode调试器窗口将如下所示:(来自Apple的Xcode调试指南的这一部分)

http://developer.apple.com/documentation/DeveloperTools/Conceptual/XcodeDebugging/art/debugger_disassembly.jpg

The stack frames are shown in the upper-left rectangle, and you can click on a row in the table to jump to that point in the code. Grayed-out lines are those that do not have viewable source code available. Scroll down until you see a line with black text and click on it. This will show you the point at which execution left your code and entered third-party code, and you can then examine variables to get a better idea about what the problem may be. If you have further questions, I highly recommend reading through the debugging guide linked above.

堆栈框架显示在左上角的矩形中,您可以单击表格中的一行来跳转到代码中的该点。灰色线条是那些没有可见源代码的线条。向下滚动,直到看到带有黑色文本的行并单击它。这将向您显示执行离开您的代码并输入第三方代码的点,然后您可以检查变量以更好地了解问题可能是什么。如果您还有其他问题,我强烈建议您阅读上面链接的调试指南。

#1


The assembly code won't tell most of us anything at all, and your question is pretty light on detail about the context in which the problem occurs, such as what your app is trying to do when it crashes, whether this is always reproducible, etc. If you post more information we'll be able to help you more.

汇编代码根本不会告诉我们大多数人,你的问题对于问题发生的上下文的详细信息非常清楚,例如你的应用程序在崩溃时尝试做什么,这是否总是可重现的,如果您发布更多信息,我们将能够为您提供更多帮助。

If you're debugging in Xcode, trace back up the call stack until you reach your code, then set a breakpoint there and debug your program again. When it stops at that point, try examining the related variables and see if they have the values you expect.

如果您在Xcode中进行调试,请跟踪调用堆栈,直到找到代码,然后在那里设置断点并再次调试程序。当它在此时停止时,尝试检查相关变量并查看它们是否具有您期望的值。


Edit: At the request of the asker, here is a slight clarification. When it stops at a breakpoint, the Xcode debugger window will look something like this: (from this section of Apple's Xcode Debugging Guide)

编辑:应提问者的要求,这里有一点点澄清。当它在断点处停止时,Xcode调试器窗口将如下所示:(来自Apple的Xcode调试指南的这一部分)

http://developer.apple.com/documentation/DeveloperTools/Conceptual/XcodeDebugging/art/debugger_disassembly.jpg

The stack frames are shown in the upper-left rectangle, and you can click on a row in the table to jump to that point in the code. Grayed-out lines are those that do not have viewable source code available. Scroll down until you see a line with black text and click on it. This will show you the point at which execution left your code and entered third-party code, and you can then examine variables to get a better idea about what the problem may be. If you have further questions, I highly recommend reading through the debugging guide linked above.

堆栈框架显示在左上角的矩形中,您可以单击表格中的一行来跳转到代码中的该点。灰色线条是那些没有可见源代码的线条。向下滚动,直到看到带有黑色文本的行并单击它。这将向您显示执行离开您的代码并输入第三方代码的点,然后您可以检查变量以更好地了解问题可能是什么。如果您还有其他问题,我强烈建议您阅读上面链接的调试指南。