http://play.golang.org/p/Xn3Qw7xAi3Go: канал необходим в этом случае?
Трудно понять канал.
Здесь я
func main() {
in := make(chan int)
out := make(chan int)
go QuickSort(in, out)
for i := 0; i < 100; i++ {
in <- rand.Intn(1000)
}
close(in)
for i := range out {
fmt.Println(i)
}
}
Это делает два канала, названные в, из и goroutine функции Быстрой сортировки.
1. Как использовать QuickSort как аргументы? Получает ли он от строки ниже?
in <- rand.Intn(1000)
2. Является ли этот случай оптимальным использованием канала? Он выглядит довольно аккуратно, получая значения динамически ... Что было бы иначе, просто сортировка без канала? Этот случай быстрее?