Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ラッパー型

Rust には、RefCellMutex など、値に特別な振る舞いを提供するさまざまな「ラッパー」型があります。これらの値へのアクセスには、無視できない時間がかかる場合があります。このような値が複数、通常一緒にアクセスされる場合は、それらを単一のラッパー内に入れるほうがよいかもしれません。

たとえば、次のような構造体は:

#![allow(unused)]
fn main() {
use std::sync::{Arc, Mutex};
struct S {
    x: Arc<Mutex<u32>>,
    y: Arc<Mutex<u32>>,
}
}

次のように表現したほうがよいかもしれません:

#![allow(unused)]
fn main() {
use std::sync::{Arc, Mutex};
struct S {
    xy: Arc<Mutex<(u32, u32)>>,
}
}

これがパフォーマンスの向上に役立つかどうかは、値の正確なアクセスパターンに依存します。 .