MST

星途 面试题库

面试题:Rust中如何使用原子类型实现简单的统计功能

请描述在Rust中,如何利用原子类型(如`std::sync::atomic::AtomicU32`)实现一个简单的计数器统计功能,包括初始化、递增和获取当前计数值的操作,并给出相应的代码示例。
33.2万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
  1. 初始化
    • 在Rust中,可以使用new方法来初始化AtomicU32类型。
  2. 递增
    • 使用fetch_add方法来原子地递增计数器的值。
  3. 获取当前计数值
    • 使用load方法来获取当前的计数值。

以下是代码示例:

use std::sync::atomic::{AtomicU32, Ordering};

fn main() {
    // 初始化计数器
    let counter = AtomicU32::new(0);

    // 递增计数器
    counter.fetch_add(1, Ordering::SeqCst);

    // 获取当前计数值
    let value = counter.load(Ordering::SeqCst);
    println!("当前计数值: {}", value);
}