/// Spawns a sandbox process for the given canister.
Spawns a sandbox process for the given canister.
Spawns a sandbox process for the given canister .
pub fn create_sandbox_process(
    controller_service: Arc<dyn rpc::DemuxServer<ctlsvc::Request, ctlsvc::Reply> + Send + Sync>,
    canister_id: &CanisterId,
    mut argv: Vec<String>,
) -> std::io::Result<(Arc<dyn SandboxService>, Child)> {
    assert!(!argv.is_empty());
    argv.push(canister_id.to_string());
    let (sandbox_handle, child_handle, _recv_thread_handle) = spawn_canister_sandbox_process(
        &argv[0],
        &argv[1..],
        Arc::clone(&controller_service) as Arc<_>,
    )
    .expect("Failed to start sandbox process");
    Ok((sandbox_handle, child_handle))
}
pub fn create_sandbox_process ( controller_service : Arc < dyn rpc :: DemuxServer < ctlsvc :: Request , ctlsvc :: Reply > + Send + Sync > , canister_id : & CanisterId , mut argv : Vec < String > , ) -> std :: io :: Result < ( Arc < dyn SandboxService > , Child ) > { assert ! ( argv is_empty ( ) ) ; argv . push ( canister_id . to_string ( ) ) ; let ( sandbox_handle , child_handle , _recv_thread_handle ) = spawn_canister_sandbox_process ( & argv [ 0 ] , & argv [ 1 .. ] , Arc :: clone ( & controller_service ) as Arc < _ > , ) . expect ( " " ) ; Ok ( ( sandbox_handle , child_handle ) ) }
Spawns a sandbox process for the given canister.
Spawns a sandbox process for the given canister .
controller_service
Arc<dyn rpc::DemuxServer<ctlsvc::Request, ctlsvc::Reply> + Send + Sync>
canister_id
&CanisterId
argv
Vec<String>