mirror of
https://github.com/golang/go
synced 2024-11-11 22:30:21 -07:00
doc/go1.2.html: pre-emption; cgo and C++
These were bullet points that I had neglected to flesh out. R=golang-dev, dvyukov CC=golang-dev https://golang.org/cl/13816043
This commit is contained in:
parent
1c45f98fa3
commit
e4c1fffcb1
@ -125,15 +125,25 @@ This is a backwards-compatible change that affects no existing programs.
|
|||||||
|
|
||||||
<h2 id="impl">Changes to the implementations and tools</h2>
|
<h2 id="impl">Changes to the implementations and tools</h2>
|
||||||
|
|
||||||
<ul>
|
<h3 id="preemption">Pre-emption in the scheduler</h3>
|
||||||
<li>
|
|
||||||
runtime: preemption of goroutines at function entry (CL 12371043).
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
<p>
|
||||||
go/build: support including C++ code with cgo (CL 8248043).
|
In prior releases, a goroutine that was looping forever could starve out other
|
||||||
</li>
|
goroutines on the same thread, a serious problem when GOMAXPROCS
|
||||||
</ul>
|
provided only one user thread.
|
||||||
|
In Go1.2, this is partially addressed: The scheduler is invoked occasionally
|
||||||
|
upon entry to a function.
|
||||||
|
This means that any loop that includes a (non-inlined) function call can
|
||||||
|
be pre-empted, allowing other goroutines to run on the same thread.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3 id="cgo_and_cpp">Cgo and C++</h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The <a href="/cmd/cgo/"><code>cgo</code></a> command will now invoke the C++
|
||||||
|
compiler to build any pieces of the linked-to library that are written in C++; the
|
||||||
|
documentation has more detail.
|
||||||
|
</p>
|
||||||
|
|
||||||
<h3 id="go_tools_godoc">Godoc and vet moved to the go.tools subrepository</h3>
|
<h3 id="go_tools_godoc">Godoc and vet moved to the go.tools subrepository</h3>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user