696 B
696 B
TCP Sprint
This script demonstrates the risk of interleaving writes when cloning
TcpStream handles across threads, re:
this discussion in the Servo Zulip.
It works by spawning 3 threads: 2 TCP clients, each of which sends predictable
chunks of bytes over a shared connection with TcpStream::write_all(), and 1
TCP listener, which tests whether messages arrive contiguously or scrambled
together.
Messages consist of the range 0x00..=0xff, repeated to fill the desired
message size.
Usage
cargo run <message size in bytes>