Struct grpcio::Channel [−][src]
A gRPC channel.
Channels are an abstraction of long-lived connections to remote servers. More client objects can reuse the same channel.
Use ChannelBuilder
to build a Channel
.
Implementations
impl Channel
[src][−]
pub unsafe fn new(
cq: CompletionQueue,
env: Arc<Environment>,
channel: *mut grpc_channel
) -> Channel
[src][−]
cq: CompletionQueue,
env: Arc<Environment>,
channel: *mut grpc_channel
) -> Channel
Create a new channel. Avoid using this directly and use
ChannelBuilder
to build a Channel
instead.
Safety
The given grpc_channel must correspond to an instantiated grpc core channel. Takes exclusive ownership of the channel and will close it after use.
pub fn check_connectivity_state(
&self,
try_to_connect: bool
) -> ConnectivityState
[src][−]
&self,
try_to_connect: bool
) -> ConnectivityState
If try_to_connect is true, the channel will try to establish a connection, potentially changing the state.
pub fn wait_for_state_change(
&self,
last_observed: ConnectivityState,
deadline: impl Into<Deadline>
) -> impl Future<Output = bool>
[src][−]
&self,
last_observed: ConnectivityState,
deadline: impl Into<Deadline>
) -> impl Future<Output = bool>
Blocking wait for channel state change or deadline expiration.
check_connectivity_state
needs to be called to get the current state. Returns false
means deadline excceeds before observing any state changes.
pub async fn wait_for_connected(&self, deadline: impl Into<Deadline>) -> bool
[src][−]
Wait for this channel to be connected.
Returns false means deadline excceeds before connection is connected.
Trait Implementations
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,