Module timely::dataflow::channels::pact

source ·
Expand description

Parallelization contracts, describing how data must be exchanged between operators. Parallelization contracts, describing requirements for data movement along dataflow edges.

Pacts describe how data should be exchanged between workers, and implement a method which creates a pair of Push and Pull implementors from an A: AsWorker. These two endpoints respectively distribute and collect data among workers according to the pact.

The only requirement of a pact is that it not alter the number of D records at each time T. The progress tracking logic assumes that this number is independent of the pact used.


  • An exchange between multiple observers by data
  • Wraps a Message<T,D> puller to provide a Pull<(T, Content<D>)>.
  • Wraps a Message<T,D> pusher to provide a Push<(T, Content<D>)>.
  • A direct connection


Type Aliases§