首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

c#关于volatile的解释解决方案

2012-05-21 
c#关于volatile的解释今天看到公司有这样子一种用法private static volatile ISqlMapper m_mapper null

c#关于volatile的解释
今天看到公司有这样子一种用法 
 private static volatile ISqlMapper m_mapper = null;
volatile的作用每次都让其变量的值为最新。。

Static的作用就是让其变量一直存在

这样子好像有点矛盾。。

求解释。。

[解决办法]
volatile 只是说这个变量在用到的时候,每次去内存中取值,而不在寄存器中取值。
一般的应用中,volatile 是用来在多线程中保证使用最新值。
但是之前看过一篇测试文章,具体的文章地址找不到,内容就是说volatile 并不是100%的安全,结论就是,慎用。

热点排行