Struct timeout_readwrite::TimeoutReader [] [src]

pub struct TimeoutReader<H> where
    H: Read + AsRawFd
{ /* fields omitted */ }

The TimeoutReader struct adds read timeouts to any reader.

The read call on a Read instance will block forever until data is available. A TimeoutReader will wait until data is available, up until an optional timeout, before actually performing the read operation.

Methods

impl<H> TimeoutReader<H> where
    H: Read + AsRawFd
[src]

[src]

Create a new TimeoutReader with an optional timeout.

Examples

This first example creates the TimeoutReader with a 5-second timeout.

use timeout_readwrite::TimeoutReader;
use std::fs::File;
use std::time::Duration;

let mut f = File::open("file.txt")?;
let mut rdr = TimeoutReader::new(f, Duration::new(5, 0));

This example creates the TimeoutReader without a timeout at all.

use timeout_readwrite::TimeoutReader;
use std::fs::File;
use std::time::Duration;

let mut f = File::open("file.txt")?;
let mut rdr = TimeoutReader::new(f, None);

Trait Implementations

impl<H> Read for TimeoutReader<H> where
    H: Read + AsRawFd
[src]

[src]

Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more

[src]

🔬 This is a nightly-only experimental API. (read_initializer)

Determines if this Reader can work with buffers of uninitialized memory. Read more

1.0.0
[src]

Read all bytes until EOF in this source, placing them into buf. Read more

1.0.0
[src]

Read all bytes until EOF in this source, placing them into buf. Read more

1.6.0
[src]

Read the exact number of bytes required to fill buf. Read more

1.0.0
[src]

Creates a "by reference" adaptor for this instance of Read. Read more

1.0.0
[src]

Transforms this Read instance to an [Iterator] over its bytes. Read more

[src]

🔬 This is a nightly-only experimental API. (io)

the semantics of a partial read/write of where errors happen is currently unclear and may change

Transforms this Read instance to an [Iterator] over [char]s. Read more

1.0.0
[src]

Creates an adaptor which will chain this stream with another. Read more

1.0.0
[src]

Creates an adaptor which will read at most limit bytes from it. Read more

impl<H> Clone for TimeoutReader<H> where
    H: Read + AsRawFd + Clone
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more