Asynchronous concurrency with reference types

Jesse Phillips jessekphillips+D at gmail.com
Fri Feb 4 15:06:24 PST 2011


spir Wrote:

> (I have few exp in the paradigm, so don't believe me.)
> 
> It seems your problem is a typical case that cannot be safe as is. Essentially, 
> IIUC, you want a shared set of data to be fed (more generally: mutated) from a 
> thread, while another thread (here, the main one) processes bits of it. How can 
> this be correct as is --except as you say if mutating operations were atomic?
> I think in such a case you /must/ have a communication protocal between both 
> tasks/threads. It is not due to language features (present ot not, this or that 
> way) but to the problem itself. Correct me if I'm wrong, please.

Well I think that this is the model that goroutines lend them selves to. You have a producer input into a channel and a consumer on another thread/machine. To get such a behavior your don't need a language feature, but as of yet D does not have anything exactly comparable.


More information about the Digitalmars-d-learn mailing list