КР
Size: a a a
КР
i
КР
S
i
VM
// нам нужны уникальные URL
urls := make(map[string]bool)
reader := bufio.NewScanner(in)
for reader.Scan() {
url := normalizeURL(reader.Text())
urls[url] = true
}
numberOfWorkers := min(concurrency, len(urls))
wg := sync.WaitGroup{}
jobs := make(chan string, len(urls))
defer close(jobs)
for url := range urls {
jobs <- url
}
for i := 0; i < numberOfWorkers; i++ {
go func() {
for job := range jobs {
fmt.Println("get", job)
wg.Done()
}
}()
}
wg.Wait()
fmt.Println("finished")
VM
VM
// нам нужны уникальные URL
urls := make(map[string]bool)
reader := bufio.NewScanner(in)
for reader.Scan() {
url := normalizeURL(reader.Text())
urls[url] = true
}
numberOfWorkers := min(concurrency, len(urls))
wg := sync.WaitGroup{}
jobs := make(chan string, len(urls))
defer close(jobs)
for url := range urls {
jobs <- url
}
for i := 0; i < numberOfWorkers; i++ {
go func() {
for job := range jobs {
fmt.Println("get", job)
wg.Done()
}
}()
}
wg.Wait()
fmt.Println("finished")
S
КР
КР
runner-cleaner imports
runner-cleaner/internal/conf: package runner-cleaner/internal/conf is not in GOROOT (/usr/local/go/src/runner-cleaner/internal/conf)