pub struct CpuSet { /* private fields */ }Expand description
Masque d’affinité CPU — miroir de cpu_set_t (CPU_SETSIZE bits, 128
octets), affinité des workers io-wq (IORING_REGISTER_IOWQ_AFF) et, à
terme, sched_setaffinity(2) (cf. family-system).
Construit vide ; les CPU sont ajoutés un à un. Les indices hors borne
(≥ CPU_SETSIZE) sont ignorés sans panique (les accesseurs renvoient
false) — zéro présomption (Principe 3), jamais d’indexation qui panique.
Implementations§
Source§impl CpuSet
impl CpuSet
Sourcepub fn set(&mut self, cpu: usize) -> bool
pub fn set(&mut self, cpu: usize) -> bool
Ajoute cpu au masque. Retourne false (sans rien changer) si cpu est
hors borne (≥ CPU_SETSIZE).
Sourcepub fn clear(&mut self, cpu: usize) -> bool
pub fn clear(&mut self, cpu: usize) -> bool
Retire cpu du masque. Retourne false si cpu est hors borne.
Sourcepub fn contains(&self, cpu: usize) -> bool
pub fn contains(&self, cpu: usize) -> bool
true si cpu est dans le masque (false si hors borne).
Sourcepub fn as_bytes(&self) -> &[u8]
pub fn as_bytes(&self) -> &[u8]
Vue octets du masque (layout cpu_set_t), pour le passage au kernel
(IORING_REGISTER_IOWQ_AFF lit nr_args octets de cumpask).
Sourcepub fn as_mut_bytes(&mut self) -> &mut [u8] ⓘ
pub fn as_mut_bytes(&mut self) -> &mut [u8] ⓘ
Vue octets mutable du masque (layout cpu_set_t), pour remplir le masque
depuis une source d’octets (p. ex. le cpu_set_t * reçu par la face libc
sched_setaffinity). Symétrique d’as_bytes. Additif ADR-085.