Interlocked.Exchange不能与泛型一起使用?
-
05-07-2019 - |
题
我正在编写一个通用类,我需要使用Interlocked。
T test1, test2;
Interlocked.Exchange<T>(ref test1, test2);
这不会编译。所以我被迫使用Exchange(对象,对象)而不是MSDN建议不要那样使用它吗?
解决方案
如果您的泛型类具有与Interlocked.Exchange<T>
相同的约束,即where T: class
,这将有效。
来自 Interlocked.Exchange 的文档:
此方法仅支持引用类型
不隶属于 StackOverflow