Module darkfi::net::session::manual_session

source ·
Expand description

Manual connections session. Manages the creation of manual sessions. Used to create a manual session and to stop and start the session.

A manual session is a type of outbound session in which we attempt connection to a predefined set of peers. Manual sessions loop forever continually trying to connect to a given peer, and sleep outbound_connect_timeout times between each attempt.

Class consists of a weak pointer to the p2p interface and a vector of outbound connection slots. Using a weak pointer to p2p allows us to avoid circular dependencies. The vector of slots is wrapped in a mutex lock. This is switched on every time we instantiate a connection slot and insures that no other part of the program uses the slots at the same time.


Type Aliases§