猿问

goroutine报panic: assignment to entry in nil map

我在另一个goroutine中会不断地将结果数据丢入resultQueue中,然后我另外起一个goroutine把这个resultQueue中的结果转换为一个map输出,请问一下为什么这个代码在调用的时候会报panic: assignment to entry in nil map

resultQueue := make(chan string)


var result map[string]string


go func(resultQueue chan string, result map[string]string) {

    for urlInfo := range resultQueue {

        ret := strings.Split(urlInfo, " ")

        result[ret[0]] = ret[1]

    }

}(resultQueue, result)


忽然笑
浏览 2245回答 2
2回答

芜湖不芜

1.map得初始化才能使用;2.建议使用:for urlInfo,err := range resultQueue {//...}

天涯尽头无女友

result := make(map[string]string)
随时随地看视频慕课网APP

相关分类

Go
我要回答