pub struct Tpu { /* private fields */ }Implementations§
Source§impl Tpu
impl Tpu
pub fn new( cluster_info: &Arc<ClusterInfo>, poh_recorder: &Arc<RwLock<PohRecorder>>, entry_receiver: Receiver<WorkingBankEntry>, retransmit_slots_receiver: Receiver<Slot>, sockets: TpuSockets, subscriptions: &Arc<RpcSubscriptions>, transaction_status_sender: Option<TransactionStatusSender>, entry_notification_sender: Option<EntryNotifierSender>, blockstore: Arc<Blockstore>, broadcast_type: &BroadcastStageType, exit: Arc<AtomicBool>, shred_version: u16, vote_tracker: Arc<VoteTracker>, bank_forks: Arc<RwLock<BankForks>>, verified_vote_sender: VerifiedVoteSender, gossip_verified_vote_hash_sender: GossipVerifiedVoteHashSender, replay_vote_receiver: ReplayVoteReceiver, replay_vote_sender: ReplayVoteSender, bank_notification_sender: Option<BankNotificationSender>, tpu_coalesce: Duration, duplicate_confirmed_slot_sender: DuplicateConfirmedSlotsSender, connection_cache: &Arc<ConnectionCache>, turbine_quic_endpoint_sender: AsyncSender<(SocketAddr, Bytes)>, keypair: &Keypair, log_messages_bytes_limit: Option<usize>, staked_nodes: &Arc<RwLock<StakedNodes>>, shared_staked_nodes_overrides: Arc<RwLock<HashMap<Pubkey, u64>>>, banking_tracer: Arc<BankingTracer>, tracer_thread_hdl: TracerThread, tpu_enable_udp: bool, tpu_max_connections_per_ipaddr_per_minute: u64, prioritization_fee_cache: &Arc<PrioritizationFeeCache>, block_production_method: BlockProductionMethod, enable_block_production_forwarding: bool, _generator_config: Option<GeneratorConfig>, ) -> (Self, Vec<Arc<dyn NotifyKeyUpdate + Sync + Send>>)
pub fn join(self) -> Result<()>
Auto Trait Implementations§
impl Freeze for Tpu
impl !RefUnwindSafe for Tpu
impl Send for Tpu
impl Sync for Tpu
impl Unpin for Tpu
impl !UnwindSafe for Tpu
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request