我正在尝试专注于 Swift/Xcode 中的调试和线程。我在方法的开头添加了一个断点,并且在调用堆栈中,我看到了对不同方法的多个引用。第一个方法用于创建 UIImageView,第二个方法是将 UIImage 添加到 View 中,第三个方法是处理点击手势。当用户点击屏幕时,将调用 final方法,从而调用前两个方法。这就是我在调用堆栈中看到这些内容的原因吗?调用堆栈中第三个方法下面的虚线是什么?请看下面的照片:
最佳答案
您对所发生情况的描述是正确的,您设置的断点包括您如何到达断点的调用堆栈。在本例中,main
线程正在监听触摸事件,当它收到触摸事件时,它会触发 handleSingleTap:
方法,该方法然后调用另一个方法,该方法又调用另一个方法,该方法具有一行带有断点的代码。虚线对于理解来说并不重要,它描绘了应用程序代码开始运行的点,而不是底层的基础代码,它只是为了使调用堆栈更易于阅读。您可能会感到困惑,因为调用堆栈是从下到上的,较低的方法被放在堆栈的顶部,因此它们从 main 的底部开始,并向上到达其中有断点的方法。
关于swift - 快速理解断点和线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47552443/