пятница, 21 июня 2019 г.

Спецификация Go: go утверждения (go statements)

Утверждение "go" запускает выполнение вызова функции как независимый конкурентый поток управления, или goroutine, в том же адресном пространстве.

GoStmt = "go" Expression .

Выражение должно быть вызовом функции или метода; оно не может быть заключено в скобки. Вызовы встроенных функций ограничены как для утверждений выражений.

Значение функции и параметры оцениваются как обычно в вызывающей программе, но в отличие от обычного вызова, выполнение программы не ожидает завершения вызванной функции. Вместо этого функция начинает выполняться независимо в новой процедуре. Когда функция завершается, ее процедура также завершается. Если функция имеет какие-либо возвращаемые значения, они отбрасываются после завершения функции.

go Server()
go func(ch chan<- bool) { for { sleep(10); ch <- true }} (c)


Читайте также:


Комментариев нет:

Отправить комментарий