https://codingnote.cc/zh-my/p/247378/
[C#.NET 拾遗补漏]10:理解 volatile 关键字