Sobes.tech

Golang

Quyidagi kod bo‘laklaridan qaysi biri kanal bilan ishlashda xato yoki potentsial muammo bilan bog‘liq? Variant 1 package main func main() { ch := make(chan int) ch <- 1 } Variant 2 package main func main() { ch := make(chan int, 1) ch <- 1 } Variant 3 package main func main() { ch := make(chan int, 1) ch <- 1 <-ch } Variant 4 package main func main() { ch := make(chan int) close(ch) <-ch } Variant 5 package main func main() { ch := make(chan int, 3) ch <- 4 }

Senior
214

Ochiq manbali loyihalarda ishlash tajribangiz haqida gapirib berishingiz va ularga qo'shgan hissangizni misollar bilan keltirishingiz mumkinmi?

Senior
204

Funktsiyaga istalgan miqdordagi argumentlarni yuborish mumkinmi?

Junior
156

Qanday joylashtirildi? Pipeline'dagi bosqichlar?

Senior
150

Go'da dinamik tiplash mavjudmi?

Junior
147

Go'da nima ip thread xavfsizligini ta'minlaydi?

Junior
142

WaitGroup ni qanday e'lon qilish mumkin? Kanalga qanday qiymat yoziladi?

Senior
133

Kanal diapazoni nima qaytaradi? for _, c := range chs bayonoti to'g'rimi?

Senior
125

CI/CD pipeline'da testlar qanday o'tdi? Nima kuzatildi?

Senior
101

func fanin[T har qanday](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