[dmd-concurrency] Sending mesages to non-listening threads

Andrei Alexandrescu andrei at erdani.com
Wed Jan 13 10:49:49 PST 2010


Robert Jacques wrote:
> Erlang uses "passers" all the time. The difference is spinning off an 
> Erlang process is no big deal, so you don't think about it. Spinning off 
> an OS thread, on the other hand, is a big deal.

Point taken. BTW we should reserve the possibility to implement abstract 
threads in D as well. I wonder how Erlang achieves its good performance 
numbers.

At a minimum, I was thinking of a respawn() function that would work 
like spawn() but may revive an existing thread or create a new one.

> I was also thinking about OS/windowing implementors (i.e. Plan9) as D is 
> a systems programming language. I think being able to write a windowing 
> system is a major use case for D's concurrency system. Yes, it probably 
> won't happen, but it will make sure we cover all our bases.

I agree.


Andrei


More information about the dmd-concurrency mailing list