Для операнда ch типа канала значение операции получения <-ch
является значением, полученным из канала ch. Направление канала должно разрешать операции получения, а типом операции получения является тип элемента канала. Выражение блокируется до тех пор, пока значение не станет доступным. Получение от нулевого канала блокирует навсегда. Операция получения на закрытом канале всегда может продолжаться немедленно, давая нулевое значение типа элемента после получения любых ранее отправленных значений.
v1 := <-ch
v2 = <-ch
f(<-ch)
// ожидание тактового импульса
// и сброс полученного значения
<-strobe
Выражение получения, используемое в присваивании или инициализации специальной формы
x, ok = <-ch
x, ok := <-ch
var x, ok = <-ch
var x, ok T = <-ch
дает дополнительный нетипизированный логический результат, сообщающий, успешно ли установлено соединение. Значение ok равно true, если полученное значение было доставлено в результате успешной операции отправки в канал, или false, если это нулевое значение, сгенерированное из-за того, что канал закрыт и пуст.
Читайте также:
- Спецификация Go: операторы, приоритет операторов
- Спецификация Go: лексические элементы
- Спецификация Go: логические операторы, адресные операторы
Комментариев нет:
Отправить комментарий