|
Goroutine — это легковесный поток выполнения. |
|
![]()
|
|
|
|
|
|
|
|
|
Допустим, у нас есть вызов функции |
|
|
Чтобы вызвать эту функцию в goroutine, используй
|
|
|
Также можно запустить goroutine для вызова анонимной функции. |
|
|
Оба наших вызова функций теперь выполняются асинхронно в отдельных goroutine. Подождём их завершения (для более надёжного подхода используй WaitGroup). |
|
|
При запуске этой программы сначала мы видим вывод блокирующего вызова, затем вывод двух goroutine. Вывод goroutine может чередоваться, поскольку они выполняются конкурентно runtime’ом Go. |
|
|
Далее мы рассмотрим дополнение к goroutine в конкурентных программах Go: каналы. |
Далее: Каналы.