为什么`thread :: JoinHandle <t>`具有类型参数?

时间:2018-11-11 01:11:11

标签: multithreading syntax rust

在Rust中,标准库附带的thread::JoinHandle<T>类型具有类型参数T。但是,似乎T实际上没有设置或用于任何东西。

实际上,Rust's own documentation仅在需要将thread::JoinHandle<_>分配给某物时才使用JoinHandle<T>T的实际作用是什么?

1 个答案:

答案 0 :(得分:2)

这是从线程代码返回的类型。您始终可以自动推断类型,并且通常您不想显式地编写类型。 join文档中有一些示例,该示例返回Result<T>

以下示例来自文档:

spawn返回一个JoinHandle,联接时返回结果。

let computation = thread::spawn(|| { 
    // Some expensive computation.
    42
});
let result = computation.join().unwrap();
println!("{}", result);