Commit graph

32 commits

Author SHA1 Message Date
Dominik Honnef ff3db8d12d doc: fix typos in Go memory model
Change-Id: I8e94215d9bee0ea3ad378870fe565e961a9d80c9
Reviewed-on: https://go-review.googlesource.com/c/go/+/411595
Reviewed-by: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Run-TryBot: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
2022-06-10 22:10:29 +00:00
Russ Cox 4c08260c51 doc/go_mem: update revision date
CL 381315 added major revisions but neglected to update the date.

For #50859.

Change-Id: I086a55f0c80579c479bca5268109c9f3ae680adf
Reviewed-on: https://go-review.googlesource.com/c/go/+/410675
Reviewed-by: Roland Shoemaker <roland@golang.org>
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Auto-Submit: Russ Cox <rsc@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
2022-06-06 20:47:51 +00:00
Russ Cox 865911424d doc: update Go memory model
Following discussion on #47141, make the following changes:

- Document Go's overall approach.
- Document that multiword races can cause crashes.
- Document happens-before for runtime.SetFinalizer.
- Document (or link to) happens-before for more sync types.
- Document happens-before for sync/atomic.
- Document disallowed compiler optimizations.

See also https://research.swtch.com/gomm for background.

Fixes #50859.

Change-Id: I17d837756a77f4d8569f263489c2c45de20a8778
Reviewed-on: https://go-review.googlesource.com/c/go/+/381315
Reviewed-by: Ian Lance Taylor <iant@google.com>
2022-06-04 18:42:07 +00:00
Jingwei 34830beffa doc/mem: remove unnecessary pre tags within same snippet
currently the snippet is segmented but should be one code snippet.

Change-Id: Ic747faf9bb1b52f9d1786eca70616a05b71ee801
Reviewed-on: https://go-review.googlesource.com/c/go/+/211198
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
2020-03-03 09:28:34 +00:00
Ian Lance Taylor e7c20b7917 doc: go_mem: clarify Once docs
Fixes #27808

Change-Id: Ia643d51004c47953642a2ba41dfed281f1112be6
Reviewed-on: https://go-review.googlesource.com/c/155637
Reviewed-by: Bryan C. Mills <bcmills@google.com>
2018-12-21 21:46:38 +00:00
Shenghou Ma 10a98dd6d9 doc/go_mem.html: correct the channel example
While we're here, also fix two HTML issues.

Fixes #9235.

Change-Id: I6e2f50931c0f387881271484a726ac2308518cf4
Reviewed-on: https://go-review.googlesource.com/7602
Reviewed-by: Rob Pike <r@golang.org>
2015-03-16 21:43:31 +00:00
Rob Pike 2eb1b65830 doc/go_mem.html: don't be clever
Add a short introductory section saying what most Go
programmers really need to know, which is that you
shouldn't have to read this document to understand
the behavior of your program.

LGTM=bradfitz, adg, tracey.brendan, iant, rsc, dsymonds
R=golang-codereviews, bradfitz, tracey.brendan, adg, iant, rsc, dsymonds
CC=golang-codereviews
https://golang.org/cl/158500043
2014-10-27 17:08:50 -07:00
Dmitriy Vyukov 81a93ef24a doc: fix happens-before rules for buffered channels
The current wording is reversed in 2 places.
Not sure how it got 4 LGTMs (mine was there as well).
Update #6242.

LGTM=dan.kortschak, r, rsc
R=golang-codereviews, 0xjnml, dan.kortschak, r, rsc
CC=golang-codereviews
https://golang.org/cl/101980047
2014-06-05 21:08:28 +04:00
Russ Cox 132e816734 doc: allow buffered channel as semaphore without initialization
This rule not existing has been the source of many discussions
on golang-dev and on issues. We have stated publicly that it is
true, but we have never written it down. Write it down.

Fixes #6242.

LGTM=r, dan.kortschak, iant, dvyukov
R=golang-codereviews, r, dominik.honnef, dvyukov, dan.kortschak, iant, 0xjnml
CC=golang-codereviews
https://golang.org/cl/75130045
2014-03-24 19:11:21 -04:00
Andrew Gerrand 48ba6fe553 doc: move spec and memory model back to /ref/
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/14364043
2013-10-04 09:45:06 +10:00
Andrew Gerrand 5dd74175d4 doc: re-organize golang.org site content
Remove "References" section.
Remove most articles and redirect to blog.golang.org.
Move /ref/spec and /ref/mem to /doc/spec and /doc/mem.
Remove duplicate links from the remaining
"Documents", "The Project", and "Help" pages.
Defer to the wiki for more links and community content.
Update command reference and mention cover tool.
Add "Pop-out" text to the front page.
Pick one of four videos at random to feature on the front page.

Fixes #2547.
Fixes #5561.
Fixes #6321.

R=r, dominik.honnef
CC=golang-dev
https://golang.org/cl/13724043
2013-09-16 15:47:13 +10:00
Jan Mercl ad50f6b213 doc: correct a minor go_mem.html mistake
Fixes #6227

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/13183043
2013-08-23 10:40:01 -05:00
David Symonds aecf5033df doc: Don't imply incorrect guarantees about data races.
A race between
        a = "hello, world"
and
        print(a)
is not guaranteed to print either "hello, world" or "".
Its behaviour is undefined.

Fixes #4039.

R=rsc
CC=dvyukov, gobot, golang-dev, r
https://golang.org/cl/6489075
2012-09-11 08:47:30 +10:00
Jeremy Jackins 7e054266c9 doc: various typos, remove apostrophes from ordinals
R=golang-dev, r, r
CC=golang-dev
https://golang.org/cl/5845059
2012-03-19 08:26:36 +11:00
Andrew Gerrand 5ca13f6378 doc: fix metadata in go_mem.html
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/5781053
2012-03-08 22:50:05 +11:00
Shenghou Ma 6b770f05ad doc/go_mem: init-created goroutine behavior changes for Go 1
They can start execution even before all init functions end.

R=rsc, r, adg
CC=golang-dev
https://golang.org/cl/5732061
2012-03-08 03:56:31 +08:00
Andrew Gerrand a22b0f82a2 doc: add command docs page, canonicalize reference paths
R=golang-dev, kyle, r
CC=golang-dev
https://golang.org/cl/5728055
2012-03-05 15:30:27 +11:00
Andrew Gerrand 7cb21a79a4 godoc: specify HTML page metadata with a JSON blob
This allows HTML pages to specify arbitrary data in a header:

<!--{
        "Title": "The page title",
        ...
}-->

replacing the old style comments:

<!-- title The page title -->

R=gri, rsc, r, bradfitz, dsymonds
CC=golang-dev
https://golang.org/cl/5532093
2012-01-19 11:24:54 +11:00
Russ Cox 44d13e3cfe doc: fix memory model read visibility bug
Fixes #2277.

R=dvyukov, r
CC=golang-dev
https://golang.org/cl/5083044
2011-09-26 12:54:30 -04:00
Robert Griesemer 18333f2de5 Go memory model: minor clarification
Fixes #1941.

R=rsc
CC=golang-dev
https://golang.org/cl/4576053
2011-06-10 12:31:10 -07:00
Russ Cox 9f03d4a3f7 doc/go_mem.html: close happens before receive on closed channel
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/4551042
2011-05-16 17:03:51 -04:00
Russ Cox 43f459ce51 typo
R=iant
CC=golang-dev
https://golang.org/cl/3582042
2010-12-14 11:33:17 -05:00
Russ Cox 7ff68b365b go_mem: goroutine exit is not special
R=r
CC=golang-dev
https://golang.org/cl/3628041
2010-12-13 17:08:27 -05:00
Rob Pike b6ad32b183 doc/go_mem.html: update location of "once".
Fixes #1118.

R=rsc
CC=golang-dev
https://golang.org/cl/2225044
2010-09-20 07:37:41 +10:00
David Symonds cc99ba0a96 doc/go_mem: remove semicolons
R=adg
CC=golang-dev
https://golang.org/cl/893041
2010-04-06 11:14:44 +10:00
Andrew Gerrand 2551cf9d1a go_mem: clarified unbuffered channel sync example
R=rsc
CC=golang-dev
https://golang.org/cl/218063
2010-02-22 16:51:28 -08:00
Russ Cox 830813f019 assorted cleanup
R=r, iant
CC=go-dev
http://go/go-review/1025024
2009-11-08 21:08:27 -08:00
Rob Pike 4e5296d4ba fixups for memory model document
R=rsc
CC=go-dev
http://go/go-review/1016018
2009-11-01 20:58:33 -08:00
Robert Griesemer 53440da835 Factored out boilerplate from all html docs in doc directory:
- the first HTML comment in those files is extracted as page
  title when serving them
- lib/godoc.html is top-level template for all pages served
- experimented a bit with package documentation layout
  (feedback welcome)
- various related cleanups

TODO:
- The / page (doc/root.html) content repeats links that are
  in the navigation bar. It needs to be cleaned up.

R=rsc
DELTA=826  (86 added, 692 deleted, 48 changed)
OCL=35230
CL=35245
2009-10-01 14:08:00 -07:00
Rob Pike 69d13b2332 make the sidebars consistent
add Effective Go to the set of links

DELTA=166  (62 added, 57 deleted, 47 changed)
OCL=35085
CL=35089
2009-09-29 11:57:28 -07:00
Larry Hosken 698c6c00a0 A step towards "externalizing" some Go docs.
+ style sheet: like code.google.com but less feature-ful
+ JS with table-of-contents generation
+ tweaked go_spec.html and go_mem.html to use new style+JS
+ static-HTML-ified a few other Go docs:
  + static HTML versions of some wiki pages (which I'll turn
    into links to these pages).

A notable thing that is _not_ in this changelist: any change
to the godoc tool or whatever thing generates http://go/godoc

R=r
APPROVED=r
DELTA=2472  (2307 added, 113 deleted, 52 changed)
OCL=34644
CL=34728
2009-09-17 08:05:12 -07:00
Rob Pike 482cbb1f33 change file name so it can be copied without name change to a more public place.
R=rsc
DELTA=1090  (545 added, 545 deleted, 0 changed)
OCL=26629
CL=26629
2009-03-22 21:53:40 -07:00
Renamed from doc/mem.html (Browse further)