[−][src]Crate nb_connect
Non-blocking TCP or Unix connect.
This crate allows you to create a TcpStream
or a UnixStream
in a non-blocking way,
without waiting for the connection to become fully established.
Examples
use polling::{Event, Poller}; use std::time::Duration; // Create a pending TCP connection. let stream = nb_connect::tcp(([127, 0, 0, 1], 80))?; // Create a poller that waits for the stream to become writable. let poller = Poller::new()?; poller.add(&stream, Event::writable(0))?; // Wait for at most 1 second. if poller.wait(&mut Vec::new(), Some(Duration::from_secs(1)))? == 0 { println!("timeout"); } else if let Some(err) = stream.take_error()? { println!("error: {}", err); } else { println!("connected"); }
Functions
tcp | Creates a pending TCP connection to the specified address. |
unix | Creates a pending Unix connection to the specified path. |