(1) 有没有办法在变量更改其值时停止程序的执行?
当然,我知道我们可以在某些行设置断点,但我只想设置一个变量,当它发生变化时,停止程序进行调试。
(2) 我还想查看程序的执行流程(通过登录文件/在屏幕上打印)。有什么方法可以运行我的程序并看到相同的内容(无需逐行执行)?
请考虑以下示例(https://play.golang.org/p/vOvW4GAM0j)
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().Unix())
r := rand.Intn(100)
var i int
if r%2 == 0 {
i = 2
} else {
i = 1
}
fmt.Println(i)
}
现在我想在 i 的值变为非零值时中断。它可能来自第 16 行或第 18 行。
(1)有什么方法可以设置(条件)断点,以便在 i 的值发生变化时中断,或者我必须在两行(16 和 18)上放置断点?
(2)另外,我想知道程序是如何执行的......像第13行然后第15行然后第17行,第18行......(假设奇数随机数)
谢谢!