connect_timeout
fn connect_timeout(string host, int port, int ms) -> Result<Stream, IoError> Import
Source: use io::net::tcp::{connect_timeout}; compiler/src/builtin_docs/io/net/tcp.hy Opens a TCP connection to host on port, giving up after ms milliseconds.
Like connect, but name lookup and every address tried share one
deadline of ms milliseconds; when it passes the result is
Err(IoError::TimedOut). ms <= 0 waits forever.
Needs --allow-net.
Parameters#
| Name | Type |
|---|---|
host | string |
port | int |
ms | int |
Returns#
Result<Stream, IoError>
Examples#
use io::{IoError};
use io::net::tcp::{connect_timeout, listen, local_addr};
use tests::assert;
fn run() -> Result<unit, IoError> {
let listener = listen("127.0.0.1", 0)?;
let (_, port) = local_addr(listener)?;
let _client = connect_timeout("127.0.0.1", port, 1000)?;
return ();
}
fn main() {
let ok = match run() {
Result::Ok(_) => true,
Result::Err(_) => false,
};
assert!(ok);
}
See also#
io::net::tcp::connectaccept: Accepts one pending connection onlistenerwithout waiting.listen: Opens a TCP socket listening onhostandport.local_addr: Returns the local(host, port)of a TCP listener or connected TCP stream.peer_addr: Returns the remote(host, port)of a connected TCP stream.set_nodelay: TurnsTCP_NODELAYon or off for a TCP stream.shutdown: Shuts down the reading half, the writing half, or both halves of a TCP stream.