最近在讨论多线程编程中的一个可能的 false sharing 问题时,有人提出加 volatile 可能可以解决问题。这种错误的认识荼毒多年,促使我写下这篇文章。 约定 Volatile 这个话题,涉及到计算机科学多个领域多个层次的诸多细节。仅靠一篇博客,很难穷尽这些细节。
易失性存储器(Volatile Memory) 和 非易失性存储器(Non-Volatile Memory) 是两大类存储器,它们的主要区别在于断电后数据的保存能力。 易失性存储器(如DRAM和SRAM)虽然速度快,但断电后数据丢失,适用于临时数据存储场景,例如计算机的主内存和缓存。 非易失 ...