【问题标题】:Understanding breakpoints and threads in swift快速理解断点和线程
【发布时间】:2018-05-13 03:24:27
【问题描述】:
我正试图将注意力集中在 Swift/Xcode 中的调试和线程上。我在方法的开头添加了一个断点,在调用堆栈中,我看到了对不同方法的几个引用。第一种方法用于创建 UIImageView,第二种是将 UIImage 添加到视图中,第三种方法是处理点击手势。当用户点击屏幕时,最后一个方法是调用,因此调用了前两个方法。这就是我在调用堆栈中看到这些的原因吗?调用堆栈中第三个方法下面的虚线是什么?请看下面的照片:
【问题讨论】:
标签:
swift
xcode
debugging
breakpoints
【解决方案1】:
您对正在发生的事情的描述是正确的,您设置的断点包括您如何到达断点的调用堆栈。在这种情况下,main 线程正在侦听触摸事件,当它收到一个事件时,它触发了handleSingleTap: 方法,然后该方法调用了另一个方法,该方法调用了另一个方法,该方法中有一行代码,其中有一个断点。虚线的理解并不重要,它描绘了您的应用程序代码开始运行的点,而不是底层的 Foundation 代码,它只是为了使调用堆栈更易于阅读。您可能会感到困惑,调用堆栈从下到上,较低的方法放在堆栈的顶部,因此它们从 main 开始,然后向上到包含断点的方法。