我无法编译一个简单的应用程序来测试 tokio-codec。tokio::net::tcp::stream::TcpStream 实现了 AsyncRead 和 -Write。但是当我尝试编译下面的代码时,出现以下错误。我还是 Rust 和 Tokio 的新手,所以毫无疑问我错过了一些明显的东西(我希望)......
主.rs:
use tokio::net::TcpListener;
use tokio::prelude::*;
use tokio_codec::{ Framed, LinesCodec };
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut listener = TcpListener::bind("127.0.0.1:12321").await?;
loop {
let (socket, _addr) = listener.accept().await?;
tokio::spawn(async move {
let (_sink, mut stream) = Framed::new(socket, LinesCodec::new()).split();
while let Some(Ok(line)) = stream.next().await {
println!("{:?}", line);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
货物.toml:
[dependencies]
tokio = { version = "0.2.6", features = ["full"] }
tokio-codec = "0.1.1"
Run Code Online (Sandbox Code Playgroud)
输出:
error[E0277]: …Run Code Online (Sandbox Code Playgroud)