评论:
cyrusol:
AzusaD:Concurrency is not Parallelism, a talk by Rob Pike. Very helpful for wrapping your mind around Go's concurrency concepts.
Which are actually very old ones envisioned by Tony Hoare. Related paper, if you want to dig deeper: Communicating Sequential Processes (PDF)
nathankerr:I wanted to make sure someone didn't already post this before I did. OP should DEFINITELY begin learning about concurrency in Go here. Rob goes over some very nice patterns, with examples, about almost everything a programmer should know about concurrency in Go (e.g. goroutines, channels, switch, etc.)
hdost:My tutorial Concurrency Slower? will take you through the process of taking a broken, slow concurrent program to a fast functional one.
You will see how to use Go's testing, benchmarks, and profiling tools as you follow along.
earthboundkid:This is a good general place for Go related resources and libraries. https://github.com/avelino/awesome-go/blob/master/README.md
However the only link talking about how to for concurrency states not to use it as a standard. Could still be useful https://github.com/rakyll/coop/blob/master/README.md
the_web_dev:I wrote a blog post about how to think about shared memory in Go: https://blog.carlmjohnson.net/post/share-memory-by-communicating/
snippet2:I sometimes sketch concurrency diagrams as a means of groking more complicated design patterns in go.
nevyn:Here is a video where it's a guy from Google who moved to Microsoft and loves Linux, who somewhere kinda explains how he uses it to read and write files. I forget where in the video it is though but kinda an all around opinion from someone who is experienced in multiple platforms and companies. https://youtu.be/hsgkdMrEJPs
Most of the talk was about devops, and how you can build portably easily ... the parallel talk was a few minutes near the end and just talked about using channels to chain things together in an abstract way.
