mirror of
https://github.com/gnu4cn/rust-lang-zh_CN.git
synced 2026-08-19 12:43:28 +08:00
Updated 'src/final_project/single_threaded.md'.
This commit is contained in:
@@ -492,16 +492,10 @@ fn handle_connection(mut stream: TcpStream) {
|
||||
|
||||
现在,`if` 和 `else` 代码块仅返回元组中的状态行与文件名的相应值;然后,我们使用正如第 19 章讨论的 [`let` 语句中的模式](../patterns/all_places.md#let-语句),使用解构特性将这两个值指派给 `status_line` 与 `filename`。
|
||||
|
||||
原先那些重复代码,现在便是在 `if` 与 `else` 两个代码块外面,并使用了 `status_line` 与 `filename` 两个变量。这令到看出两种情况之间的差别更为容易,并意味着在咱们打算修改文件读取与响应写入工作方式时,只有一处要更新代码。清单 20-9 中代码的行为,将与清单 20-8 中的一致。
|
||||
之前重复的代码现在位于 `if` 与 `else` 代码块之外,并使用了 `status_line` 与 `filename` 两个变量。这样更容易看出两种情况之间的区别,而且这意味着当我们打算更改文件读取和响应写入的方式时,只有一个地方要更新代码。清单 21-9 中的代码的行为将与清单 21-8 中的相同。
|
||||
|
||||
相当棒!现在咱们就有了一个以差不多 40 行 Rust 代码编写的,以一个内容页面响应一个到 `/` 的请求,并以一个 `404` 响应回应全部其他请求的简单 web 服务器了。
|
||||
太棒了!现在我们仅以大约 40 行 Rust 代码,就实现了个简单的 web 服务器,他会以一个内容页面响应一次请求,并以一个 404 的响应,响应所有其他请求。
|
||||
|
||||
当前,咱们的服务器是运行在单线程下的,意味着其只能一次服务一个请求。接下来就要通过模拟一下低速请求,检查那怎样会称为一个问题。随后咱们将修复这个问题,从而让咱们的服务器可以一次处理多个请求。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
(End)
|
||||
目前,我们的服务器在单线程下运行,这意味着他一次只能服务一个请求。我们来通过模拟一些缓慢请求,来看看这会如何成为一个问题。然后,我们将修复他,以便我们的服务器可以同时处理多个请求。
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user