I think the main difference is the way the language and runtime collaborate to schedule multiple events. Note the use of the 'select...case' in the example code.
You end up with a really nice "actor model", where you have a goro which owns some state responding to incoming messages over channels and sending replies.
Slide 24 gives the general structure, but it's a good read.
These slides go into some more examples: http://talks.golang.org/2013/advconc.slide
You end up with a really nice "actor model", where you have a goro which owns some state responding to incoming messages over channels and sending replies.
Slide 24 gives the general structure, but it's a good read.