mirror of
https://github.com/golang/go
synced 2024-11-24 23:57:57 -07:00
go spec: clarification of channel close()
R=r, rsc CC=golang-dev https://golang.org/cl/1766042
This commit is contained in:
parent
708d7160fa
commit
dc60c5a7ec
@ -1,5 +1,5 @@
|
|||||||
<!-- title The Go Programming Language Specification -->
|
<!-- title The Go Programming Language Specification -->
|
||||||
<!-- subtitle Version of July 12, 2010 -->
|
<!-- subtitle Version of July 14, 2010 -->
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
TODO
|
TODO
|
||||||
@ -4347,14 +4347,17 @@ BuiltinArgs = Type [ "," ExpressionList ] | ExpressionList .
|
|||||||
<h3 id="Close_and_closed">Close and closed</h3>
|
<h3 id="Close_and_closed">Close and closed</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
For a channel <code>c</code>, the predefined function <code>close(c)</code>
|
For a channel <code>c</code>, the built-in function <code>close(c)</code>
|
||||||
marks the channel as unable to accept more
|
marks the channel as unable to accept more values through a send operation;
|
||||||
values through a send operation. After any previously
|
values sent to a closed channed are ignored.
|
||||||
|
After calling <code>close</code>, and after any previously
|
||||||
sent values have been received, receive operations will return
|
sent values have been received, receive operations will return
|
||||||
the zero value for the channel's type. After at least one such zero value has been
|
the zero value for the channel's type without blocking.
|
||||||
|
After at least one such zero value has been
|
||||||
received, <code>closed(c)</code> returns true.
|
received, <code>closed(c)</code> returns true.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
<h3 id="Length_and_capacity">Length and capacity</h3>
|
<h3 id="Length_and_capacity">Length and capacity</h3>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@ -4560,10 +4563,10 @@ func recover() interface{}
|
|||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<font color=red>TODO: Most of this text could move to the respective
|
<span class="alert">TODO: Most of this text could move to the respective
|
||||||
comments in <code>runtime.go</code> once the functions are implemented.
|
comments in <code>runtime.go</code> once the functions are implemented.
|
||||||
They are here, at least for now, for reference and discussion.
|
They are here, at least for now, for reference and discussion.
|
||||||
</font>
|
</span>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
Loading…
Reference in New Issue
Block a user