pub struct ProviderSynchronousProxy { /* private fields */ }
Implementations§
Source§impl ProviderSynchronousProxy
impl ProviderSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<ProviderEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<ProviderEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn initialize(&self, config: ProviderConfig) -> Result<(), Error>
pub fn initialize(&self, config: ProviderConfig) -> Result<(), Error>
Initialize tracing and prepare for writing trace records for events in
the specified categories
into buffer
using fifo
for signaling.
Tracing hasn’t started yet, a Start()
call is still required.
At most one trace can be active at a time. Subsequent Initialize()
requests received prior to a Terminate()
call must be ignored.
Sourcepub fn start(&self, options: &StartOptions) -> Result<(), Error>
pub fn start(&self, options: &StartOptions) -> Result<(), Error>
Begin tracing.
If tracing has already started the provider must ignore the request.
There is no result. The provider must send a TRACE_PROVIDER_STARTED
packet on fifo
to indicate success/failure of starting.
Sourcepub fn stop(&self) -> Result<(), Error>
pub fn stop(&self) -> Result<(), Error>
Stop tracing.
If tracing has already stopped the provider must ignore the request.
Once the provider has finished writing any final events to the trace
buffer, it must send a TRACE_PROVIDER_STOPPED
packet on fifo
.
Note that multiple Start,Stop
requests can be received between
Initialize,Terminate
.
Sourcepub fn terminate(&self) -> Result<(), Error>
pub fn terminate(&self) -> Result<(), Error>
Terminate tracing.
Tracing is stopped first if not already stopped.
After tracing has fully terminated the provider must close both
buffer
and fifo
to indicate to the trace manager that tracing is
finished.
Sourcepub fn get_known_categories(
&self,
___deadline: MonotonicInstant,
) -> Result<Vec<KnownCategory>, Error>
pub fn get_known_categories( &self, ___deadline: MonotonicInstant, ) -> Result<Vec<KnownCategory>, Error>
Gets the trace categories that might be produced by this provider.
Trait Implementations§
Source§impl Debug for ProviderSynchronousProxy
impl Debug for ProviderSynchronousProxy
Source§impl SynchronousProxy for ProviderSynchronousProxy
impl SynchronousProxy for ProviderSynchronousProxy
Source§type Proxy = ProviderProxy
type Proxy = ProviderProxy
Source§type Protocol = ProviderMarker
type Protocol = ProviderMarker
Proxy
controls.