[racket] just a question of curiosity about thread
At Fri, 20 Mar 2015 12:14:14 +0100, Yvan Godin wrote:
> so questions are:
> Why aren't *Thread* distributed on a pool of *Place* like Erlang do for
> it's own *Process* (for scalability) ?
> Is there a technical reason for that ?
> Is it difficult to do ?
> Are the Thread Mailboxes able to send/receive (immutable) messages across
> Places ?
Different threads can share arbitrary values, including mutable
objects. Different places cannot share anything (except for some
specific kinds of atomic-data vectors). So, moving a thread from one
place to another is difficult in general, because starting the thread
on a different place would change the kinds of values that it can share
with other threads.
Threads can send and receive place-style messages within a single
place. Across multiple places, though, a thread handle is not one of
the things that can be sent across a place channel; threads in
different places exchange messages only across a place channel.