On Concurrency

"Nordlöw" via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Apr 18 10:20:04 PDT 2014


Could someone please give some references to thorough explainings 
on these latest concurrency mechanisms

- Go: Goroutines
- Coroutines (Boost):
   - https://en.wikipedia.org/wiki/Coroutine
   - 
http://www.boost.org/doc/libs/1_55_0/libs/coroutine/doc/html/coroutine/intro.html
- D: core.thread.Fiber: 
http://dlang.org/library/core/thread/Fiber.html
- D: vibe.d

and how they relate to the following questions:

1. Is D's Fiber the same as a coroutine? If not, how do they 
differ?

2. Typical usecases when Fibers are superior to 
threads/coroutines?

3. What mechanism does/should D's builtin Threadpool ideally use 
to package and manage computations?

4. I've read that vibe.d's has a more lightweight mechanism than 
what core.thread.Fiber provides. Could someone explain to me the 
difference? When will this be introduced and will this be a 
breaking change?

5. And finally how does data sharing/immutability relate to the 
above questions?


More information about the Digitalmars-d-learn mailing list