本文簡要介紹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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。