Метод name
Метод name класса Builder задает имя потока, которое будет использоваться для идентификации. Параметром метод принимает строку или тип, реализующий трейт Into<String>. Имя потока может быть полезно при отладке и логировании, так как позволяет различать потоки в выводе программы.
Синтаксис
Builder::new().name(name).spawn(closure)
Пример
Давайте создадим поток с именем "worker" и выведем его имя внутри потока:
use std::thread;
fn main()
{
let builder = thread::Builder::new().name("worker".to_string());
let handle = builder.spawn(|| {
let current = thread::current();
println!("Thread name: {:?}", current.name());
}).unwrap();
handle.join().unwrap();
}
Результат выполнения кода:
Thread name: Some("worker")
Пример
Давайте создадим поток без имени и проверим, что вернет метод name:
use std::thread;
fn main()
{
let builder = thread::Builder::new();
let handle = builder.spawn(|| {
let current = thread::current();
println!("Thread name: {:?}", current.name());
}).unwrap();
handle.join().unwrap();
}
Результат выполнения кода:
Thread name: None
Смотрите также
-
класс
Builder,
который используется для настройки параметров потока -
метод
new,
который создает новый экземпляр Builder -
метод
stack_size,
который устанавливает размер стека для потока -
метод
spawn,
который запускает поток с заданными настройками