3.1.介绍并开始

未匹配的标注

预备和开始

预备阶段

我们的聊天程序将使用基于TCP的简单文本协议。
该协议由utf-8消息组成,由\ n分隔。

客户端连接到服务器,并把第一行作为登录信息发送出去。
之后,客户端可以使用以下语法将消息发送给其他客户端:

login1, login2, ... loginN: message

每个指定客户端之后都会接受到一个from login: message 信息。

一个会话看上去应该是这个样子:

在Alice的电脑上:   |   在Bob的电脑上:

> alice                |   > bob
> bob: hello               < from alice: hello
                       |   > alice, bob: hi!
                           < from bob: hi!
< from bob: hi!        |

聊天服务器的主要挑战是跟踪数量巨大的并发连接。聊天客户端的主要挑战是管理并发的传出消息、传入消息和用户输入。

开始

让我们使用cargo创建一个新的项目,并进入该项目目录:

cargo new a-chat
cd a-chat

添加一下依赖到cargo.toml

[dependencies]
futures = "0.3"
async-std = "1"

当然你也可以直接在终端使用一下命令直接添加上述依赖:

cargo add futures async-std

聊天服务器的主要难点是追踪多个并发连接,而聊天客户端的主要难点是管理发送消息,接收消息和用户输入的并发。

开始

创建新的 Cargo 项目:

$ cargo new a-chat
$ cd a-chat

将以下内容加入 Cargo.toml 中:

[dependencies]
futures = "0.3.0"
async-std = "1"

原文链接:book.async.rs/

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/rust-async-std/...

译文地址:https://learnku.com/docs/rust-async-std/...

上一篇 下一篇
贡献者:3
讨论数量: 0
发起讨论 只看当前版本


暂无话题~