了解 swift 中的断点和线程

Understanding breakpoints and threads in swift

我正试图在 Swift/Xcode 中专注于调试和线程。我在方法的开头添加了一个断点,在调用堆栈中,我看到了对不同方法的多个引用。第一个方法用于创建 UIImageView,第二个方法用于将 UIImage 添加到视图中,第三个方法用于处理点击手势。当用户点击屏幕时,调用最后一个方法,从而调用前两个方法。这就是我在调用堆栈中看到每一个的原因吗?调用堆栈中第三个方法下方的虚线是什么?请看下图:

你对发生的事情的描述是正确的,你设置的断点包括你如何到达断点的调用堆栈。在这种情况下,main 线程正在侦听触摸事件,当它得到一个时,它会触发 handleSingleTap: 方法,然后调用另一个方法,该方法调用另一个方法,该方法有一行代码和一个断点在里面。虚线并不那么重要,它描绘了您的应用程序代码开始 运行 的点,而不是底层 Foundation 代码,它只是为了使调用堆栈更易于阅读。您可能会感到困惑,因为调用堆栈从下到上,较低的方法放在堆栈的顶部,因此它们起源于 main 的底部,并向上移动到其中有断点的方法。