0
A
回答
1
读取和添加使您能够以原子方式读取和修改内存位置。共识意味着协议(在这种情况下为获取和添加)可以为n个不同的线程提供共识。
这是什么意思?
我们的目标是使用协议,例如,一个线程确定一个值,并且该值被所有其他线程采用。你可以谷歌一些这些协议。在多线程中,我们可以自动修改内存并且线程有时决定一个值,这一点很重要。
重要的是要注意共识协议是无等待的,这意味着即使一个人死亡(出于某种原因)所有线程都会取得进展。因此,在使用多线程时,了解对象一致性编号非常重要。一个共同的数字例如一个原子寄存器(1)告诉我们,我们将永远不能仅使用原子寄存器来实现一个对象,这个寄存器可以为2个线程提供共识。这就是为什么我们在多线程中使用诸如读取和添加的构造。
示例 OS中的调度通常使用FIFO队列完成。先进先出队列有两个共识,因此将它们用于多线程是安全的。
相关问题
- 1. 为什么GetHashCode()很重要?
- 2. 为什么JSON很重要?
- 3. 为什么emplace_back很重要?
- 4. 为什么GL_CLAMP在这里很重要?
- 5. 为什么括号在函数指针声明中很重要?
- 6. 为什么MVC概念很重要?
- 7. php - move_uploaded_file - 为什么它很重要?
- 8. 线程安全的网络应用程序 - 为什么这很重要?
- 9. 什么TensorFlow hash_bucket_size很重要
- 10. 为什么nolock在查询数据库时很重要
- 11. 在同一个过程中多线程共享什么?
- 12. 线程需要很长时间。为什么?
- 13. 为什么在重放之前调用publish()很重要()
- 14. 主机:为什么MySQL数据库的数量很重要?
- 15. 为什么订单在Observable.merge的这种用法中很重要?
- 16. 为什么在示例中的类型转换很重要?
- 17. 为什么媒体查询的顺序在CSS中很重要?
- 18. 为什么在WPF中UI的可伸缩性很重要?
- 19. 为什么在程序终止时调用析构函数很重要?
- 20. 为什么Pentaho PDI有很多名字?
- 21. 什么是WebIDL和(为什么)它很重要?
- 22. 什么是分片,为什么它很重要?
- 23. 为什么在多线程服务器中重复(2)侦听套接字?
- 24. 为什么要在CUDA中启动32个线程的倍数?
- 25. 为什么在Java中停止线程很困难?
- 26. 为什么在C中分离编译和链接过程很重要?
- 27. 为什么数据结构对齐对于性能很重要?
- 28. 为什么Django数据库缓存不能在多个线程之间共享?
- 29. 为什么Scala写的线路重复数据删除应用程序很慢?
- 30. 为什么配置DisposableObserver在这种情况下很重要