Функция new класса Arc
Функция new класса Arc создает новый атомарный указатель с подсчетом ссылок. Она принимает значение и возвращает Arc<T>, который содержит это значение. Arc позволяет безопасно разделять владение данными между несколькими потоками.
Параметром функция принимает значение, которое нужно поместить внутрь атомарного указателя.
Синтаксис
Arc::new(value)
Пример
Давайте создадим атомарный указатель на число 5 и выведем его значение:
use std::sync::Arc;
fn main()
{
let res = Arc::new(5);
println!("{}", res);
}
Результат выполнения кода:
5
Пример
Давайте создадим атомарный указатель на строку "abcde" и выведем ее:
use std::sync::Arc;
fn main()
{
let res = Arc::new("abcde");
println!("{}", res);
}
Результат выполнения кода:
"abcde"
Пример
Давайте создадим атомарный указатель на вектор vec![1, 2, 3, 4, 5] и выведем его:
use std::sync::Arc;
fn main()
{
let res = Arc::new(vec![1, 2, 3, 4, 5]);
println!("{:?}", res);
}
Результат выполнения кода:
[1, 2, 3, 4, 5]
Смотрите также
-
класс
Arc,
который представляет атомарный указатель с подсчетом ссылок -
метод
clone,
который увеличивает счетчик ссылок и возвращает новый Arc -
метод
try_unwrap,
который пытается извлечь значение из Arc -
структура
Weak,
которая представляет слабую ссылку на данные в Arc