5 ms·
Thanks for taking the time to write this response. The more I hear about Go's features, the more I seem to like it.
by hannofcart 9y ago
Thanks for taking the time to write this response. The more I hear about Go's features, the more I seem to like it.
- wyager 9y agoFYI, this is not unique to Go. A number of languages implement lightweight threads in the same way (roughly), like erlang or Haskell. It’s all epoll or other efficient polling primitives under the hood.
- weberc2 9y agoI'm of the impression that there's an important difference between Go and Haskell's models--namely that Go is M:N threaded and Haskell is not; however, I don't entirely understand the significance of the difference, so hopefully someone else can comment and enlighten me.
- joel_ms 9y agoAre you sure about Haskell not having m:n threads? Because it's seems weird, considering GHC is listed as one of a few examples on wikipedia: https://en.m.wikipedia.org/wiki/Thread_(computing)#M:N_.28hybrid_threading.29 https://en.m.wikipedia.org/wiki/Thread_(computing)#M:N_.28hy...
- weberc2 9y agoNo, I'm not sure. :) I may have incorrectly assumed that the definition of M:N threads includes movable application threads (e.g., Go's scheduler can move goroutines from one kernel thread to another).