|
|
|
|
|
by pkolaczk
3848 days ago
|
|
"I think the way Go addresses concurrency is simple and straight-forward. It's trivial to write concurrent applications." Except when it is not. Message passing style of concurrency is just a dual of the classical blocking concurrency with critical sections, mutexes, monitors and conditional variables. An actor is a dual of a critical section. Actor's mailbox is a dual of a mutex. Sending/receiving messages is a dual of wait/notify. With any complex CSP program you can have all the same problems: race conditions, starvation, deadlocks (livelocks) etc. |
|