本文简要介绍rust语言中 std::thread::Builder.spawn
的用法。
用法
pub fn spawn<F, T>(self, f: F) -> Result<JoinHandle<T>> where F: FnOnce() -> T, F: Send + 'static, T: Send + 'static,
通过获取 Builder
的所有权来生成一个新线程,并将 io::Result
返回到其 JoinHandle
。
生成的线程可能比调用者活得更久(除非调用者线程是主线程;整个进程在主线程完成时终止)。连接句柄可用于阻止生成的线程终止,包括恢复其Panics。
如需更完整的文档,请参阅 thread::spawn
。
错误
与 spawn
自由函数不同,此方法产生 io::Result
以捕获在操作系统级别创建线程的任何失败。
Panics
如果设置了线程名称并且它包含空字节,则会出现Panics。
例子
use std::thread;
let builder = thread::Builder::new();
let handler = builder.spawn(|| {
// thread code
}).unwrap();
handler.join().unwrap();
相关用法
- Rust Builder.spawn_unchecked用法及代码示例
- Rust Builder.stack_size用法及代码示例
- Rust Builder.new用法及代码示例
- Rust Builder.name用法及代码示例
- Rust Builder用法及代码示例
- Rust BuildHasher.build_hasher用法及代码示例
- Rust BuildHasher用法及代码示例
- Rust BuildHasher.hash_one用法及代码示例
- Rust BuildHasherDefault用法及代码示例
- Rust BufRead.split用法及代码示例
- Rust BufWriter.capacity用法及代码示例
- Rust BufReader.new用法及代码示例
- Rust BufWriter.get_ref用法及代码示例
- Rust BufReader.get_mut用法及代码示例
- Rust BufReader.with_capacity用法及代码示例
- Rust BufWriter.get_mut用法及代码示例
- Rust BufRead.fill_buf用法及代码示例
- Rust BufRead.has_data_left用法及代码示例
- Rust BufRead.read_until用法及代码示例
- Rust BufWriter.into_inner用法及代码示例
- Rust BufRead.read_line用法及代码示例
- Rust BufWriter用法及代码示例
- Rust BufReader.capacity用法及代码示例
- Rust BufWriter.with_capacity用法及代码示例
- Rust BufWriter.new用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 std::thread::Builder.spawn。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。