pub struct SeqlockReadGuard<'a, T: ?Sized + 'a> { /* private fields */ }
Expand description
顺序锁共享读临界区的守卫
共享读临界区的守卫只提供解引用到只读引用。
Implementations§
source§impl<'a, T: ?Sized> SeqlockReadGuard<'a, T>
impl<'a, T: ?Sized> SeqlockReadGuard<'a, T>
sourcepub fn read_retry(&self) -> bool
pub fn read_retry(&self) -> bool
关闭共享读临界区,并检查是否需要重试
- 当顺序锁的顺序值没有发生变化,返回 [
false
] ; - 当顺序锁的顺序值发生了变化,返回 [
true
] 。
§示例
loop {
let guard = sqlk.read_begin();
let val = *guard;
if !guard.read_retry() {
break;
}
}