我必须通过并行交换随机索引元素来混洗数组。我的问题是如何防止其他线程读写当前正在被另一个线程交换的元素。我不想在一个线程正在交换时锁定整个数组。我尝试了这样的东西: for (int i = 0; i < array.Length; i++)
for (int i = 0; i < thredCount; i++
double initialSum; SpinWaitspinWait = new SpinWait();
// Try incrementing the sum until the loop findsInterlocked.CompareExchange(ref sum, incrementedSum, initialSum))