Trait rustc_std_workspace_std::os::linux::net::TcpStreamExt
source · pub trait TcpStreamExt: Sealed {
// Required methods
fn set_quickack(&self, quickack: bool) -> Result<(), Error>;
fn quickack(&self) -> Result<bool, Error>;
}
🔬This is a nightly-only experimental API. (
tcp_quickack
)Available on Linux only.
Expand description
Os-specific extensions for TcpStream
Required Methods§
sourcefn set_quickack(&self, quickack: bool) -> Result<(), Error>
fn set_quickack(&self, quickack: bool) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
tcp_quickack
)Enable or disable TCP_QUICKACK
.
This flag causes Linux to eagerly send ACKs rather than delaying them. Linux may reset this flag after further operations on the socket.
See man 7 tcp
and
TCP delayed acknowledgement
for more information.
Examples
#![feature(tcp_quickack)]
use std::net::TcpStream;
use std::os::linux::net::TcpStreamExt;
let stream = TcpStream::connect("127.0.0.1:8080")
.expect("Couldn't connect to the server...");
stream.set_quickack(true).expect("set_quickack call failed");
sourcefn quickack(&self) -> Result<bool, Error>
fn quickack(&self) -> Result<bool, Error>
🔬This is a nightly-only experimental API. (
tcp_quickack
)Gets the value of the TCP_QUICKACK
option on this socket.
For more information about this option, see TcpStreamExt::set_quickack
.
Examples
#![feature(tcp_quickack)]
use std::net::TcpStream;
use std::os::linux::net::TcpStreamExt;
let stream = TcpStream::connect("127.0.0.1:8080")
.expect("Couldn't connect to the server...");
stream.set_quickack(true).expect("set_quickack call failed");
assert_eq!(stream.quickack().unwrap_or(false), true);