org.erights.e.elib.vat
Class BootShuttle
java.lang.Object
|
+--org.erights.e.elib.vat.BootShuttle
- public class BootShuttle
- extends Object
Untamed: Use with caution -- a BootShuttle passes through the boot-comm-system as
if it's a
DeepPassByCopy
object.
Used to transport a non-DeepPassByCopy payload between vats over the boot
comm system, either as an argument or return result. Use only
when you're sure that all of the mutable state transitively reachable from
the payload is no longer reachable from the vat of origin, or that all such
mutable state is itself managed in a conventionally thread-safe way. These
are the same conditions under which it's safe to invoke
Vat.seed/3
or
Vat.seed/1
.
The constructor of this class (ie, the maker of BootShuttles) should only
be made available to trusted code, as misuse of this can cause
unpredictably bad race condition bugs.
- Author:
- Mark S. Miller
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
myPayload
private final Object myPayload
BootShuttle
public BootShuttle(Object payload)
- Enabled:
getPayload
public Object getPayload()
- Enabled:
comments?