Struct libp2p_ping::Config

source ·
pub struct Config { /* private fields */ }
Expand description

The configuration for outbound pings.

Implementations§

source§

impl Config

source

pub fn new() -> Self

Creates a new Config with the following default settings:

These settings have the following effect:

  • A ping is sent every 15 seconds on a healthy connection.
  • Every ping sent must yield a response within 20 seconds in order to be successful.
  • A single ping failure is sufficient for the connection to be subject to being closed.
  • The connection may be closed at any time as far as the ping protocol is concerned, i.e. the ping protocol itself does not keep the connection alive.
source

pub fn with_timeout(self, d: Duration) -> Self

Sets the ping timeout.

source

pub fn with_interval(self, d: Duration) -> Self

Sets the ping interval.

source

pub fn with_max_failures(self, n: NonZeroU32) -> Self

Sets the maximum number of consecutive ping failures upon which the remote peer is considered unreachable and the connection closed.

source

pub fn with_keep_alive(self, b: bool) -> Self

👎Deprecated since 0.40.0: Use libp2p::swarm::behaviour::KeepAlive if you need to keep connections alive unconditionally.

Sets whether the ping protocol itself should keep the connection alive, apart from the maximum allowed failures.

By default, the ping protocol itself allows the connection to be closed at any time, i.e. in the absence of ping failures the connection lifetime is determined by other protocol handlers.

If the maximum number of allowed ping failures is reached, the connection is always terminated as a result of ConnectionHandler::poll returning an error, regardless of the keep-alive setting.

Trait Implementations§

source§

impl Clone for Config

source§

fn clone(&self) -> Config

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Config

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Config

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

source§

fn vzip(self) -> V