Ich habe eine goroutine for-Schleife in einer Lauf:Wie schließe ich alle Goroutinen, die "schlafen"?
func main(){
for _, i := range x{
go httpRequests(i, ch)
}
for i := range ch{
print i
}
}
func httpRequests(i, ch){
for _, x := range y{
go func(string x){
do something with i
ch <- result
}(x)
}
}
Wenn ich laufen, dass er sagt, alle goroutines schlafen. Irgendwelche Vorschläge?
Sie müssen tatsächlichen Code zeigen. – Volker
Ich denke, mein Beispielcode im obigen Link ist genug, um mich zu starten. Wenn Sie diesen Code ausführen, können Sie sehen, dass er dieselbe Ausgabe druckt. Was ich will ist Iterieren durch die IDs und drucken sie alle – shishh03
Ich habe nicht die Zeit, diesen Code zu debuggen, aber ich schlage vor, Sie lesen das ganze Dokument: https://github.com/golang/go/wiki/ CommonMistakes # using-goroutines-on-loop-iterator-Variablen –