Вопросы с тегом «goroutine»

128
Как асинхронно вызвать метод в Java

В последнее время я смотрел горутины Go и подумал, что было бы неплохо иметь что-то подобное в Java. Насколько я искал, обычный способ распараллеливания вызова метода - это сделать что-то вроде: final String x = "somethingelse"; new Thread(new Runnable() { public void run() {...

111
Как дождаться завершения всех горутин, не используя time.Sleep?

Этот код выбирает все файлы xml в той же папке в качестве вызываемого исполняемого файла и асинхронно применяет обработку к каждому результату в методе обратного вызова (в приведенном ниже примере выводится только имя файла). Как мне избежать использования метода сна, чтобы не допустить выхода из...

108
Пример для sync.WaitGroup правильно?

Правильно ли этот пример использования sync.WaitGroup? Это дает ожидаемый результат, но я не уверен насчет положения wg.Add(4)и wg.Done(). Имеет ли смысл добавлять сразу четыре горутины wg.Add()? http://play.golang.org/p/ecvYHiie0P package main import ( "fmt" "sync" "time" ) func...

103
Как остановить горутину

У меня есть горутина, которая вызывает метод и передает возвращаемое значение по каналу: ch := make(chan int, 100) go func(){ for { ch <- do_stuff() } }() Как мне остановить такую ​​горутину?...

83
Получение возвращаемых значений из горутин

Приведенный ниже код дает ошибку компиляции, говорящую о неожиданном запуске: x := go doSomething(arg) func doSomething(arg int) int{ ... return my_int_value } Я знаю, что могу получить возвращаемое значение, если вызову функцию как обычно, без использования горутины. Или я могу использовать...