Struct allo_isolate::Isolate [−][src]
pub struct Isolate { /* fields omitted */ }
Expand description
Simple wrapper around the Dart Isolate Port, nothing else.
Implementations
Create a new Isolate
with a port obtained from Dart VM side.
Example
this a non realistic example lol :D
let isolate = Isolate::new(42);
Post an object to the Isolate
over the port
Object must implement IntoDart
.
returns true
if the message posted successfully, otherwise false
Safety
This assumes that you called store_dart_post_cobject
and we have
access to the Dart_PostCObject
function pointer also, we do check
if it is not null.
Example
let isolate = Isolate::new(42);
isolate.post("Hello Dart !");
Consumes Self
, Runs the task, await for the result and then post it
to the Isolate
over the port
Result must implement IntoDart
.
returns true
if the message posted successfully, otherwise false
Safety
This assumes that you called store_dart_post_cobject
and we have
access to the Dart_PostCObject
function pointer also, we do check
if it is not null.
Example
use async_std::task;
let isolate = Isolate::new(42);
task::spawn(isolate.task(async { 1 + 2 }));
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Isolate
impl UnwindSafe for Isolate
Blanket Implementations
Mutably borrows from an owned value. Read more