doc: add missing practices

pull/846/head
Xinyu Zhao 3 years ago
parent acc8727626
commit d69f6ce2b0
No known key found for this signature in database
GPG Key ID: 385E7C8DA4153E22

@ -179,3 +179,7 @@ let home: IpAddr = "127.0.0.1".parse().unwrap();
还有一种情况,在展开过程中,如果展开本身 `panic` 了,那展开线程会终止,展开也随之停止。
一旦线程展开被终止或者完成,最终的输出结果是取决于哪个线程 `panic`:对于 `main` 线程,操作系统提供的终止功能 `core::intrinsics::abort()` 会被调用,最终结束当前的 `panic` 进程;如果是其它子线程,那么子线程就会简单的终止,同时信息会在稍后通过 `std::thread::join()` 进行收集。
## 课后练习
> [Rust By Practice](https://zh.practice.rs/result-panic/panic.html),支持代码在线编辑和运行,并提供详细的[习题解答](https://github.com/sunface/rust-by-practice)。

@ -385,3 +385,7 @@ let x = try!(function_with_error());
可以看出 `?` 的优势非常明显,何况 `?` 还能做链式调用。
总之,`try!` 作为前浪已经死在了沙滩上,**在当前版本中,我们要尽量避免使用 try!**。
## 课后练习
> [Rust By Practice](https://zh.practice.rs/result-panic/result.html),支持代码在线编辑和运行,并提供详细的[习题解答](https://github.com/sunface/rust-by-practice)。

Loading…
Cancel
Save