|
You are here |
www.minaandrawos.com | ||
| | | | |
sookocheff.com
|
|
| | | | | Writing correct programs is hard; writing correct concurrent programs is harder. Java Concurrency in Practice. So, why bother with concurrency? A number of reasons: Concurrency provides a natural method for composing asynchronous code. Concurrency allows your program to avoid blocking user operations. Concurrency provides one of the easiest ways take advantage of multi core systems. As processor counts increase, exploiting concurrency will be an even more important facet of high performance systems. | |
| | | | |
antonz.org
|
|
| | | | | Limiting the concurrency and waiting for the peers. | |
| | | | |
rakhim.org
|
|
| | | | | [AI summary] Concurrency Is Not Parallellism is a talk by Rob Pike that explores the distinction between concurrency and parallelism. The talk emphasizes that concurrency is about structuring systems to handle many things at once, while parallelism is about executing multiple tasks simultaneously. Concurrency provides the structure that can enable parallelism, but the goal is good structure, not necessarily parallel execution. The talk uses analogies like the gopher example to illustrate these concepts and highlights the importance of concurrent design for building scalable and correct systems. It also discusses Go's concurrency features, such as goroutines and channels, and how they simplify concurrent programming. The talk concludes that concurrency is pow... | |
| | | | |
www.integralist.co.uk
|
|
| | | The following code doesn't do what you might expect: package main import "fmt" func main() { var i *impl fmt.Println("i == nil:", i == nil) what(i) } type impl struct{} func (i *impl) do() {} func what(i interface{ do() }) { fmt.Println("i == nil:", i == nil) } If you expected the what function to print i == nil: true, then keep reading... Typed Nils The behavior observed is due to the way interfaces and nil values interact in Go. | ||