Re:Go Things I Love: Channels and Goroutines
by jayd16 on Tuesday January 07, 2020 @12:00PM
(#21981819)
Neat. Most of the permutations are easily handled in other languages as well except for the full blocking (sleeping) case. Without a channel the scheduler can reason about, most languages would have to busy wait or possibly pull from multiple channels.
[ Parent
| on HN ]
Re:Go Things I Love: Channels and Goroutines
by SamReidHughes on Tuesday January 07, 2020 @02:20PM
(#21983588)
I think the biggest advantage is that it's a lot harder to screw up using a select statement than most equivalent API's you'd create in other languages that allow waiting on one of N channels/signals/channel/event operations, and branching based off that.
Simply because you're either constructing a bunch of callback objects or you get some number N saying the Nth parameter had an event, and your code has to match N to the specific channel correctly.