MSDN “线程安全集合.NET框架4”声明:
“一些并发集合类型使用轻量级同步机制,如SpinLock、SpinWait、SemaphoreSlim和CountdownEvent,这些都是.NET Framework 4中的新机制”
同时MSDN网站告诉SpinWaitwas可在.NET 1.1中使用,而另一篇MSDN文章从SpinWaitwas 4.0启动.NET
好吧,好奇的是李·格里森回答SynchronizedCollection和其他并发集合有什么不同?的评论
@Matt,.NET4并发类使用
SpinWait对象来解决线程安全问题,而不是Monitor.Enter/Exit (也称为关键部分)?
以及第一个NSDN引文,说明SpinWait是.NET 4.0的新版本。
这到底是新的还是不新的?
如果是新的那怎么做?
发布于 2013-02-27 11:25:56
struct System.Threading.SpinWait是.NET 4.0的新版本。方法System.Threading.Thread.SpinWait()存在于.NET 1.0之后。
注意,System.Threading.SpinWait内部调用System.Threading.Thread.SpinWait()。有关更多细节,请参见Joe的“Windows上的并发编程”(第14章,“旋转等待”一节)。
发布于 2013-02-27 11:25:32
将System.Threading.SpinWait structure引入到.NET 4中,从.NET 1.0开始就提出了System.Threading.Thread.SpinWait 方法。
来自SpinWait结构的文档:
对于普通应用程序来说,SpinWait通常并不有用。在大多数情况下,您应该使用.NET框架提供的同步类,例如监视器。然而,对于大多数需要自旋等待的目的,
SpinWait类型应该比SpinWait方法更好。
请注意,在大多数情况下,您不应该使用它们中的任何一个:)
https://stackoverflow.com/questions/15110860
复制相似问题