On Wed, 2015-10-07 at 07:15 +0000, extrawurst via Digitalmars-d wrote: > […] > > I have never used Go, but isn't what you describe exactly what > vibe.d is doing using Fibers ?
As I understand it, vibe.d is a single threaded event-loop with fibres. In this sense it is equivalent in architecture to Node except that vibe.d allows for blocking fibres where Node required non-blocking approaches. Thus I would choose vibe.d over Node any day, except… Go has a task pool (goroutines), but underneath is a thread pool not a single thread. This means that multiple goroutines can be executing concurrently, that means in parallel (*). GPars has an approach similar to Go. Go is way more efficient though as it uses the kernel threads directly, GPars has to fight with the JVM threads. (*) It is a pity that computing and the rest of the world have different meaning for concurrent and parallel, it leads to lots of wonderful confusion. -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:[email protected] 41 Buckmaster Road m: +44 7770 465 077 xmpp: [email protected] London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
signature.asc
Description: This is a digitally signed message part
