Sobes.tech

Golang

Welke van de volgende codefragmenten bevat een fout of potentieel probleem gerelateerd aan het werken met kanalen? Optie 1 package main func main() { ch := make(chan int) ch <- 1 } Optie 2 package main func main() { ch := make(chan int, 1) ch <- 1 } Optie 3 package main func main() { ch := make(chan int, 1) ch <- 1 <-ch } Optie 4 package main func main() { ch := make(chan int) close(ch) <-ch } Optie 5 package main func main() { ch := make(chan int, 3) ch <- 4 }

Senior
216

Kunt u vertellen over uw ervaring met open source projecten en voorbeelden geven van uw bijdragen?

Senior
205

Kun je een willekeurig aantal argumenten doorgeven aan een functie?

Junior
182

Wat in Go zorgt voor thread safety?

Junior
170

Hoe zijn ze gedeployed? Stappen in de pipeline?

Senior
151

Is er dynamische typisering in Go?

Junior
150

Hoe declareer je een WaitGroup? Hoe schrijf je een waarde naar een kanaal?

Senior
137

Wat retourneert het bereik van kanalen? Is de verklaring: for _, c := range chs geldig?

Senior
126

Hoe verliepen de tests in de CI/CD-pipeline? Wat werd er gevolgd?

Senior
103

func fanin[T any](chs ...<-chan T) chan T { out := make(chan T) wg := sync.WaitGroup{} for _, ch := range chs { wg.Add(1) go func(c <-chan T) { defer wg.Done() for v := range c { out <- v } }(ch) } go func() { wg.Wait() close(out) }() return out } func main() { ch1 := make(chan int, 5) ch2 := make(chan int, 5) for i := 1; i <= 5; i++ { ch1 <- i ch2 <- i * 2 } close(ch1) close(ch2) fmt.Println(fanin(ch1, ch2)) }

Senior
98