所以,我对并行计算还挺陌生的。
假设我有一个数组 arr 在C++代码中。从不同的线程访问具有不同索引的单元格是否会产生竞赛条件?例如,如果一个线程将某个值比如说设置为 arr[i] 而第二个将写进 arr[j] ( 其中 i != j ).
arr
arr[i]
arr[j]
i != j
如果你确保所有线程都使用同一个数组实例,并且每个线程都使用自己的索引,那么就不会出现竞赛。