Go 正常运行的非常奇怪的问题函数不会报告错误,但在调试模式下启动时会报告错误

Go 正常运行的非常奇怪的问题函数不会报告错误,但在调试模式下启动时会报告错误,go,exception,Go,Exception,直接运行是无错误的 调试程序时 第二次输入递归函数时,将报告一个错误 不要跳过方法进入方法 这是我的职责好吗 非常奇怪的问题 type Student结构{ 名称字符串 //排序 排序整数 //母公司 父整数 //水平仪 整数级 Id int } func main(){ 变量数据[]学生=[]学生{ {名称:家用电器", 排序:1,父级:0,级别:1,Id:1}, {名称:电脑办公,排序:2,父级:0,级别:1,Id:2}, {名称:男装,排序:3,父级:0,级别:1,Id:3}, {名称:手

直接运行是无错误的 调试程序时 第二次输入递归函数时,将报告一个错误 不要跳过方法进入方法 这是我的职责好吗 非常奇怪的问题

type Student结构{
名称字符串
//排序
排序整数
//母公司
父整数
//水平仪
整数级
Id int
}
func main(){
变量数据[]学生=[]学生{
{名称:家用电器", 排序:1,父级:0,级别:1,Id:1},
{名称:电脑办公,排序:2,父级:0,级别:1,Id:2},
{名称:男装,排序:3,父级:0,级别:1,Id:3},
{名称:手机,排序:1,父级:2,级别:2,Id:4},
{名称:数码,排序:2,父级:1,级别:2,Id:5},
{名称:汽车,排序:3,父级:1,级别:2,Id:6},
{名称:男装2“,排序:1,父级:3,级别:2,Id:7},
{名称:男装2.下层皮裤,排序:1,父级:7,级别:3,Id:8},
{名称:汽车2.下层拖拉机,排序:1,父级:6,级别:3,Id:9},
}
结果:=make([]学生,len(数据))
标志:=make([]布尔,len(数据))
索引:=0
FindTest(结果、数据、标志、1、0和索引(&R))
}
以下是错误日志:

//exception
0 {家用电器 1 0 1 1}
Exception 0xc000001d 0x0 0x0 0x4bb723
PC=0x4bb723

main.FindTest(0xc000089d58, 0xc000089da0, 0x9, 0x9, 0xc00000a0d0, 0x9, 0x9, 0x2, 0x1, 0xc000089d40)
    F:/golang/gostu/ptr/chan2.go:36 +0x573
main.FindTest(0xc000089d58, 0xc000089da0, 0x9, 0x9, 0xc00000a0d0, 0x9, 0x9, 0x1, 0x0, 0xc000089d40)
    F:/golang/gostu/ptr/chan2.go:47 +0x465
main.main()
    F:/golang/gostu/ptr/chan2.go:32 +0x184
rax     0xc000089b10
rbx     0xc000089880
rcx     0xc000036000
rdi     0xc00008e008
rsi     0x19
rbp     0xc000089ce0
rsp     0xc000089bb8
r8      0x83fd88
r9      0xc0000896e0

问题似乎出现在
FindTest
函数中,您没有向我们展示。这种“heisenbug”通常表示对内存的某些非同步并发访问:当程序在调试器下运行时,各种操作的计时可能与“normal”下的计时不同“特别是如果您通过在调试器中使用断点来挂起一个(或多个)goroutine。不幸的是,因为它是Windows™, 您还可能会体验到反病毒软件以有趣的方式介入。
func FindTest(结果*[]Student,数据[]Student,flag[]bool,level,parent int,index*int){if level>4{return}对于i:=0;i
@大黑猫 您的代码在my ENV中运行良好。这是算法题吗,还是业务?问题似乎出在
FindTest
函数中,您没有向我们展示。这种“heisenbug”通常表示对内存的某些非同步并发访问:当程序在调试器下运行时,各种操作的计时可能与“normal”下的计时不同特别是当你通过在调试器中使用断点来暂停一个(或多个)goroutine时™, 您还可能会体验到反病毒软件以有趣的方式介入。
func FindTest(结果*[]Student,数据[]Student,flag[]bool,level,parent int,index*int){if level>4{return}对于i:=0;i
@大黑猫 您的代码在my ENV中运行良好。这是算法题吗,还是业务?