pub struct ProcessHandle { /* private fields */ }
Expand description
ProcessManagerHandle
wrapper used to interact with only one spawned process.
ProcessHandle
mimics ProcessManagerHandle
API, but does not require passing ProcessId
as methods parameter.
It can be created by ProcessManagerHandle::spawn_with_handle
method or manually by ProcessHandle::new
.
Like a ProcessManagerHandle
it can be cheaply cloned and used by many threads safely.
See ProcessManagerHandle
docs for more information.
If you want to kill the child process automatically on Drop
, then use the ScopedProcessHandle
.
Implementations§
Source§impl ProcessHandle
impl ProcessHandle
Sourcepub fn new(id: ProcessId, handle: ProcessManagerHandle) -> Self
pub fn new(id: ProcessId, handle: ProcessManagerHandle) -> Self
Creates a new ProcessHandle
from given process identifier and manager handle.
Sourcepub async fn send_message<M>(&self, message: M) -> Result<(), WriteMessageError>
pub async fn send_message<M>(&self, message: M) -> Result<(), WriteMessageError>
See ProcessManagerHandle::send_message
docs.
Sourcepub async fn subscribe_message_stream(
&self,
) -> Result<impl Stream<Item = Result<Message, ReceiveMessageError>>, ReadMessageError>
pub async fn subscribe_message_stream( &self, ) -> Result<impl Stream<Item = Result<Message, ReceiveMessageError>>, ReadMessageError>
Sourcepub async fn get_logs_stdout(
&self,
query: LogsQuery,
) -> Result<Vec<String>, GetLogsError>
pub async fn get_logs_stdout( &self, query: LogsQuery, ) -> Result<Vec<String>, GetLogsError>
See ProcessManagerHandle::get_logs_stdout
docs.
Sourcepub async fn get_logs_stderr(
&self,
query: LogsQuery,
) -> Result<Vec<String>, GetLogsError>
pub async fn get_logs_stderr( &self, query: LogsQuery, ) -> Result<Vec<String>, GetLogsError>
See ProcessManagerHandle::get_logs_stderr
docs.
Sourcepub async fn get_process_info(&self) -> Result<ProcessInfo, GetProcessInfoError>
pub async fn get_process_info(&self) -> Result<ProcessInfo, GetProcessInfoError>
See ProcessManagerHandle::get_process_info
docs.
Sourcepub fn wait(
&self,
poll_interval: Duration,
) -> JoinHandle<Result<ProcessInfo, GetProcessInfoError>>
pub fn wait( &self, poll_interval: Duration, ) -> JoinHandle<Result<ProcessInfo, GetProcessInfoError>>
See ProcessManagerHandle::wait
docs.
Sourcepub async fn kill(&self) -> Result<(), KillProcessError>
pub async fn kill(&self) -> Result<(), KillProcessError>
See ProcessManagerHandle::kill
docs.
Trait Implementations§
Source§impl Clone for ProcessHandle
impl Clone for ProcessHandle
Source§fn clone(&self) -> ProcessHandle
fn clone(&self) -> ProcessHandle
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more