for { select { case data := <-pool[Basic]: f(data) continue default: } select { case data := <-pool[Secondary]: f(data) continue default: } select { case data := <-pool[Other]: f(data) default: } }
используется для разбора данных с каналов по приоритетам. Как доработать чтобы проц не жрало, без слипов же есть решения?