当前位置:嗨网首页>书籍在线阅读

17-线程安全的特征

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

8.5.2 线程安全的特征

线程安全的想法是,如果你有来自多个线程的数据,那么对该值的任何读取或写入操作都不会导致不一致的结果,即使是像a+=1这样简单的增量操作。更新值的问题在于它会大致转换为3步——加载(load)、增量(increment)及存储(store)。数据可以安全地被更新意味着它们是包装在安全类型(例如Arc和Mutex)中的,以确保在程序中数据保持一致性。

在Rust中,你可以获得在线程中安全使用和引用类型的编译期保证。这些保证被实现为特征,即Send和Sync特征。