3 ms·
I don't know why, because I don't think they are all that similar, but I'm often asked to defend my choice of using Elixir professionally vs. Go. From the arti
by innocentoldguy 9y ago
I don't know why, because I don't think they are all that similar, but I'm often asked to defend my choice of using Elixir professionally vs. Go. From the article, this is one of the big reasons I chose Elixir over Go:
"Go’s goroutines are neither memory-isolated nor are they guaranteed to yield after a certain amount of time. Certain types of library operations in Go (e.g. syscalls) will automatically yield the thread, but there are cases where a long-running computation could prevent yielding."
goroutines also take up about 10 times the memory.
- Rapzid 9y agoIt's true, but would very rarely come up in practice; it's an extremely simplified statement. Any function call(that isn't inlined) is an opportunity for the scheduler to preempt the goroutine. I has been described as partially preemptive. I thought an erlang process takes up at least 309 words of memory? That would make it <4x on a 64 bit system?