Messages get sent to an actor's address and only that actor “reads”
from that mailbox. And there is no buffering. Channels don’t run any
logic (like an actor), they may be buffered and any goroutine with
access to a channel may read from it. All goroutines run in the same
address space. As actors don’t share memory, they can be distributed
or can even migrate from one node to another. Erlang is an actor
language. Go is not.

> On Mar 4, 2018, at 9:00 AM, Anto Aravinth <anto.aravinth....@gmail.com> wrote:
> 
> Hello All, 
> 
> I'm new to golang and trying to understand the difference between channels 
> and actors. From my knowledge:
> 
> 1. Golang support channels, which is concurrently safe
> 2. Channels can be shared across goroutines that are running. (very much 
> similar to messages)
> 
> Actors:
> 1. They are based on messages. 
> 2. Messages are immutable by nature. 
> 3. Actors work based on messages, concurrently. 
> 
> I find actors and channels much similar, may be I'm wrong here. Any help 
> would be really good. 
> 
> Thanks, 
> Anto;
> -- 
> You received this message because you are subscribed to the Google Groups 
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to