Struct tk_pool::Pool [] [src]

pub struct Pool<M> { /* fields omitted */ }

Pool is an object that is convenient to use for client connections. It will spawn a future that processes requests and establish a channel to it. It can be used from multiple threads (but will establish connections in an the one that originally created pool).

It's still a Sink and you are free to implement Service or whatever high level interfaces apply for your protocol.

Methods

impl<M> Pool<M>
[src]

Create a connection pool the specified buffer size and specified Sink (which should be a Multiplexer)

This is basicaly (sans the error conversion):

let (tx, rx) = channel(buffer_size);
handle.spawn(rx.forward(multiplexer));
return tx;

Trait Implementations

impl<M> Sink for Pool<M>
[src]

The type of value that the sink accepts.

The type of value produced by the sink when an error occurs.

Begin the process of sending a value to the sink. Read more

Flush all output from this sink, if necessary. Read more

A method to indicate that no more values will ever be pushed into this sink. Read more

Creates a new object which will produce a synchronous sink. Read more

Composes a function in front of the sink. Read more

Transforms the error returned by the sink.

Map this sink's error to any error implementing From for this sink's Error, returning a new sink. Read more

Adds a fixed-size buffer to the current sink. Read more

A future that completes when the sink has finished processing all pending requests. Read more

A future that completes after the given item has been fully processed into the sink, including flushing. Read more

A future that completes after the given stream has been fully processed into the sink, including flushing. Read more

impl<M> Clone for Pool<M>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more