From: Ian Lance Taylor Date: Thu, 29 Mar 2018 18:26:27 +0000 (-0700) Subject: runtime: document that LockOSThread in init locks to thread X-Git-Tag: go1.11beta1~843 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=eb4f33243ece5874d2690c4b9bc72cb47f8da772;p=gostls13.git runtime: document that LockOSThread in init locks to thread This is more or less implied by the spec language on initialization, but restate it for clarity. Fixes #23112 Change-Id: Ibe5385acafe4eac38823de98a025cd37f7a77d3b Reviewed-on: https://go-review.googlesource.com/103399 Reviewed-by: Austin Clements --- diff --git a/src/runtime/proc.go b/src/runtime/proc.go index 98d78f0c82..a4a93e7878 100644 --- a/src/runtime/proc.go +++ b/src/runtime/proc.go @@ -3472,6 +3472,10 @@ func dolockOSThread() { // If the calling goroutine exits without unlocking the thread, // the thread will be terminated. // +// All init functions are run on the startup thread. Calling LockOSThread +// from an init function will cause the main function to be invoked on +// that thread. +// // A goroutine should call LockOSThread before calling OS services or // non-Go library functions that depend on per-thread state. func LockOSThread() {