我有以下使用RxSwift和RxCocoa的代码。我遇到的问题是,当我尝试设置一个用lldb命令thread jump -b 1
跳转的断点时,出现错误:执行被中断,原因:EXC_BAD_ACCESS(代码= 1,地址= 0x7fb8ecc0b9)。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var buttonPressedLabel: UILabel!
@IBOutlet weak var button: UIButton!
private var counter = 0
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func buttonWasPressed(_ sender: UIButton) {
let closure = { [unowned self] in
print("1st line of closure")
self.counter += 1
self.buttonPressedLabel.text = "Button Pressed \(self.counter) times"
print("2nd line of closure")
}
closure()
}
}
尝试跳过闭包中的代码行或通过断点执行闭包中的代码时,还有什么需要做的事情吗?
答案 0 :(得分:1)
在回答以下问题时,我谈到了thread jump
的危险:
breakpoint with debugger Commend jump in xcode
是否以及如何使您陷入跳过代码的麻烦取决于您跳过的代码。如果您确实想了解问题,则需要查看要跳过的代码的反汇编。但是,编译后的代码通常不在独立单元中,其中某些单元是可选的。因此,尽管这是一种有用的技术,但并不总是能够保证成功。