[concurrency-interest] Does "Thread.stop" do what is says it does?
miles at milessabin.com
Fri Aug 5 17:57:41 EDT 2005
Dawid Kurzyniec wrote,
> When isolates appear, we will definitely give them a second look - at
> least, they may allow us to implement a configurable hierarchies of
> isolation levels (process, isolate, class loader, shared). But our
> system (http://www.mathcs.emory.edu/dcl/h2o/) is not an applet
> container, or a servlet engine - it is a distributed computing and
> resource sharing platform. Services (which we call pluglets) are
> pieces of distributed applications, and they are in fact expected to
> communicate. If they happen to be loaded into the same address space,
> it is important that they can share data directly. In other words, in
> our typical applications, communication performance requirements
> usually outweight isolation requirements.
Understood, not the least because, as far as my day job is concerned,
this is precisely my situation too.
Given an application which is already structured in such a way that
inter-process and inter-host interaction is accommodated, the mapping
to Isolates and Links should be a relatively painless, even pleasant,
experience (if that's not the case, comments to isolate-interest@
altair.cs.oswego.edu ASAP would be much appreciated).
The rest is down to quality of implementation. I'm hopeful, but the best
I can do is report that my early multi-process prototype implementation
of JSR-121 (conformant at the time, but not in any way tuned) performed
adequately on a variety of typical distributed computing style
benchmarks. I'd expect that an industrial strength implementation would
do much better. Which is not to say that I'd recommend Isolates and
Links for emulating fine-grained CSP- or pi-style computational models,
but anything somewhat coarser than that should get along with them just
fine. In extreme cases, Isolates can share state via memory mapped
files using Links for coordination.
> Given all that, I find the abstraction of isolates too, well,
> isolating, to be used as a default in our system.
Odd perhaps, but I find the opposite to be the case. Treating everything
as remote, even when it might be local is a strangely liberating
More information about the Concurrency-interest