VB.NET中的易失性等价物
可能重复:
如何在VB.net中指定volatile的等价物?
什么是C#“volatile”的VB.NET关键字?
如果没有关键字什么机制是等价的?
在VB.NET中,C#的易失性密钥没有等价。 C#中的Volatile只是确保编译器在生成IL时处理不同的事情,但VB.NET编译器没有此选项。
你可以通过这种方式解决它( 取自这篇博文 ):
Function VolatileRead(Of T)(ByRef Address As T) As T VolatileRead = Address Threading.Thread.MemoryBarrier() End Function Sub VolatileWrite(Of T)(ByRef Address As T, ByVal Value As T) Threading.Thread.MemoryBarrier() Address = Value End Sub
使用Thread.VolatileRead()
和VolatileWrite()
方法。
http://msdn.microsoft.com/en-us/library/system.threading.thread.volatileread.aspx
取决于您建议使用的变量类型
System.Threading.Thread.VolatileRead()
System.Threading.Thread.VolatileWrite()
System.Threading.Interlocked还包含一些不错的东西……
- 列出类别的所有性能计数器
- 如何强制使用我的程序打开某个类型的任何文件?
- 找不到方法’Void Newtonsoft.Json.Serialization.DefaultContractResolver.set_IgnoreSerializableAttribute(Boolean)
- 随着时间的推移围绕枢轴点旋转GameObject
- TransactionScope和Oracle的问题
- 如何使用reflection查找数据注释属性及其参数
- 从SQL Server 2012或SQL CLR C#发送HTTP POST请求
- 如何在加载特定更新面板后加载jquery文件?
- 如何在UserControl中创建部分客户区?