pub trait IoClient: Sync + Send {
fn queue_transactions(&self, transactions: Vec<Bytes>, peer_id: usize);
fn queue_ancient_block(
&self,
block_bytes: Unverified,
receipts_bytes: Bytes
) -> EthcoreResult<H256>;
fn ancient_block_queue_fullness(&self) -> f32;
fn queue_consensus_message(&self, message: Bytes);
}
Expand description
IO operations that should off-load heavy work to another thread.
Required methods
fn queue_transactions(&self, transactions: Vec<Bytes>, peer_id: usize)
fn queue_transactions(&self, transactions: Vec<Bytes>, peer_id: usize)
Queue transactions for importing.
fn queue_ancient_block(
&self,
block_bytes: Unverified,
receipts_bytes: Bytes
) -> EthcoreResult<H256>
fn queue_ancient_block(
&self,
block_bytes: Unverified,
receipts_bytes: Bytes
) -> EthcoreResult<H256>
Queue block import with transaction receipts. Does no sealing and transaction validation.
fn ancient_block_queue_fullness(&self) -> f32
fn ancient_block_queue_fullness(&self) -> f32
Return percentage of how full is queue that handles ancient blocks. 0 if empty, 1 if full.
fn queue_consensus_message(&self, message: Bytes)
fn queue_consensus_message(&self, message: Bytes)
Queue conensus engine message.