pub trait LatencyThroughputExperiment<P, I, O>: ExchangeData{
// Required methods
fn get_name(&self) -> String;
fn build_dataflow<G: Scope<Timestamp = u128>>(
&self,
params: P,
scope: &mut G,
worker_index: usize,
) -> (Stream<G, I>, Stream<G, O>);
// Provided methods
fn run_dataflow<G: Scope<Timestamp = u128>>(
&self,
scope: &mut G,
params: P,
parallelism: TimelyParallelism,
worker_index: usize,
output_filename: &'static str,
) { ... }
fn run_with_filename(
&'static self,
params: P,
parallelism: TimelyParallelism,
output_filename: &'static str,
) { ... }
fn run_single(&'static self, params: P, parallelism: TimelyParallelism) { ... }
fn run_all(
&'static self,
node_info: TimelyNodeInfo,
default_params: P,
rates_per_milli: &[u64],
par_workers: &[u64],
par_nodes: &[u64],
) { ... }
}
Required Methods§
fn get_name(&self) -> String
fn build_dataflow<G: Scope<Timestamp = u128>>( &self, params: P, scope: &mut G, worker_index: usize, ) -> (Stream<G, I>, Stream<G, O>)
Provided Methods§
fn run_dataflow<G: Scope<Timestamp = u128>>( &self, scope: &mut G, params: P, parallelism: TimelyParallelism, worker_index: usize, output_filename: &'static str, )
fn run_with_filename( &'static self, params: P, parallelism: TimelyParallelism, output_filename: &'static str, )
fn run_single(&'static self, params: P, parallelism: TimelyParallelism)
fn run_all( &'static self, node_info: TimelyNodeInfo, default_params: P, rates_per_milli: &[u64], par_workers: &[u64], par_nodes: &[u64], )
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.